Cod sursa(job #231349)

Utilizator jupanubv92Popescu Marius jupanubv92 Data 14 decembrie 2008 12:10:39
Problema Tablete Scor 70
Compilator cpp Status done
Runda Algoritmiada 2009, Runda 1, Studenti Marime 1.26 kb
#include<stdio.h>
#define N 1001

int n,k;


int main()
{
    freopen("tablete.in","r",stdin);
    freopen("tablete.out","w",stdout);
    scanf("%d %d",&n,&k);
    long long nr=0;
    if (k%2==0)
    {
        long long nr2=k*n;
        for (int i=1;i<=n;i++)
        {
            for (int j=1;j<=k;j++)
                printf("%lld ",++nr);
            for (int j=k+1;j<=n;j++)
                printf("%lld ",++nr2);
            printf("\n");
        }
    }
    else
    {
        long long nr2;
        if (n%2==0)
            nr2=n*k;
        else nr2=n*k-1;
        for (int i=1;i<=n;i++)
        {
            if (i%2!=0)
            {
                for (int j=1;j<k;j++)
                    printf("%lld ",++nr);
                printf("%lld ",nr+2);

            }
            else
            {
                printf("%lld ",nr+1);
                nr+=2;
                for (int j=2;j<=k;j++)
                    printf("%lld ",++nr);
            }
            if (i==1)
            {
                printf("%lld ",nr2+1);
                nr2+=2;
            }
            for (int j=k+1;j<=n;j++)
                if (!(i==1&&j==k+1)) printf("%lld ",++nr2);
            printf("\n");
        }
    }
    return 0;
}