Cod sursa(job #1335645)

Utilizator tudormaximTudor Maxim tudormaxim Data 5 februarie 2015 19:42:32
Problema Tablete Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <iostream>
#include <cstdio>
using namespace std;
const int nmax = 1005;
int a[nmax][nmax], n, k;
inline void go_left(int par, int i)
{
    for(int j=k-1; j>0; j--)
        a[i][j]=a[i][j+1]-1;
}
inline void go_right(int par, int i)
{
    for(int j=k+1; j<=n; j++)
        a[i][j]=a[i][j-1]+1;
}
int main()
{
    freopen("tablete.in", "r", stdin);
    freopen("tablete.out", "w", stdout);
    int i, j;
    scanf("%d %d", &n, &k);
    int par = (k>>1<<1)==k ? k:k+1;
    for(i=1; i<=n; i++, par+=2)
    {
        a[i][k]=par;
        go_left(par, i);
        go_right(par, i);
    }

    for(i=1; i<=n; i++, printf("\n"))
        for(j=1; j<=n; j++)
            printf("%d ", a[i][j]);
    return 0;
}