Cod sursa(job #952267)

Utilizator MIonutMistreanu Ionut MIonut Data 22 mai 2013 23:14:48
Problema Tablete Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.9 kb
#include<cstdio>
#define Dim 1005
using namespace std;
short n, k;
unsigned a[Dim][Dim];
int main()
{
    freopen("tablete.in", "r", stdin);
    scanf("%hd%hd",&n, &k);
    int c=1;
    for(int i=1; i<=n; ++i)
        for(int j=1; j<=k; ++j)
            a[i][j]=c++;
    for(int i=1; i<=n; ++i)
        for(int j=k+1; j<=n; ++j)
            a[i][j]=c++;
    if(k%2)
    {
        for(int i=1; i<n; ++i)
            if(a[i][k]%2)
            {
                int aux=a[i][k];
                a[i][k]=a[i+1][1];
                a[i+1][1]=aux;
            }
        if(a[n][k]%2)
        {
            int aux=a[n][k];
            a[n][k]=a[1][k+1];
            a[1][k+1]=aux;
        }
    }

    freopen("tablete.out", "w", stdout);
    for(int i=1; i<=n; ++i)
    {
        for(int j=1; j<=n; ++j)
            printf("%u ",a[i][j]);
        printf("\n");
    }
    return 0;
}