Cod sursa(job #1146272)

Utilizator mirunazMiruna Zavelca mirunaz Data 18 martie 2014 20:40:03
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.92 kb
#include<cstdio>
int n,k,i,j,x,y;
int main ()
{
    freopen("tablete.in","r",stdin);
    freopen("tablete.out","w",stdout);
    scanf("%d %d",&n,&k);
    if(k%2==0 && n%2==0)
    {
        x=0;
        for(i=1;i<=n;i++)
        {
            for(j=1;j<=n;j++)
            {
                x++;
                printf("%d ",x);
            }
        printf("\n");
        }
    }
    else if(k%2==0)
    {
        x=0;
        y=k*n;
        for(i=1;i<=n;i++){
            for(j=1;j<=n;j++)
            {
                if(j<=k)
                {
                    x++;
                    printf("%d ",x);
                }
                else
                {
                    y++;
                    printf("%d ",y);
                }
            }
        printf("\n");
        }
    }
    else
    {
        x=0;
        y=n*k;
        for(i=1;i<=n;i++)
        {
            if(i%2==1)
                x++;
            for(j=1;j<=n;j++)
            {
                if(j<=k)
                {
                    if(i%2==1)
                    {
                        x++;
                        printf("%d ",x);
                    }
                    else
                    {
                        if(j==1)
                            printf("%d ",k*(i-2)+1);
                        else
                        {
                            x++;
                            printf("%d ",x);
                        }
                    }
                }
                else
                {
                    if(i==1 && j==k+1 && n%2==1)
                        {printf("%d ",k*(n-1)+1);
                        y++;}
                    else
                    {
                        y++;
                        printf("%d ",y);
                    }
                }
            }
        printf("\n");
        }
    }
    return 0;
}