Cod sursa(job #234000)
Utilizator | Data | 19 decembrie 2008 20:38:18 | |
---|---|---|---|
Problema | Tablete | Scor | 20 |
Compilator | c | Status | done |
Runda | Arhiva de probleme | Marime | 1.47 kb |
#include <stdio.h>
int A[100][100],N,K;
int main()
{
int nr;
int par[500];
int i,j;
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
scanf("%d %d", &N,&K);
nr=0;
for (i=2;i<=N*N;i+=2)
par[++nr]=i;
int p;
p=((N*K)/2)-N+1;
int frecv[10000];
for (i=1;i<=N;++i)
{
A[i][K]=par[p];
frecv[par[p]]=1;
p++;
}
nr=1;
for (i=1;i<=N;++i)
for (j=1;j<K;++j)
{
if (frecv[nr]==0)
{
A[i][j]=nr;
frecv[nr]=1;
}
else
{
while (frecv[nr]==1)
nr++;
A[i][j]=nr;
frecv[nr]=1;
}
nr++;
}
nr++;
for (i=1;i<=N;++i)
for (j=K+1;j<=N;++j)
{
A[i][j]=nr;
frecv[nr]=1;
nr++;
}
for (i=1;i<=N;++i)
{
for (j=1;j<=N;++j)
{
printf("%d ", A[i][j]);
}
printf("\n");
}
return 0;
}