Pagini recente » Cod sursa (job #606470) | Cod sursa (job #654420) | Cod sursa (job #2488652) | Cod sursa (job #1171248) | Cod sursa (job #231755)
Cod sursa(job #231755)
#include<stdio.h>
int a[1002][1002];
int n,k;
int main()
{
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
scanf("%d%d",&n,&k);
if(!(k&1))
{
int aux=0;
for(int i=0; i<n; i++)
{
for(int j=1; j<n; j++)
printf("%d ",++aux);
printf("%d\n",++aux);
}
return 0;
}
int cate=k;
int aux=k+1;
a[1][k]=aux;
for(int i=2; i<=n; i++)
{
cate+=k;
if(cate&1)
a[i][k]=cate+1;
else
a[i][k]=cate;
/*aux+=k;
if(aux<cate)
aux=cate;
else
if(aux>cate)
a
if(aux&1)
{
if(aux-1>=cate)
aux--;
else
aux++;
}
a[i][k]=aux;*/
}
aux=k+1;
int nr=0,r=1;
a[n+1][k]=1<<30;
for(int i=1; i<=n; i++)
{
for(int j=1; j<k; j++)
{
++nr;
if(nr==aux)
{
++nr;
aux=a[++r][k];
}
a[i][j]=nr;
}
}
for(int i=1; i<=n; i++)
{
for(int j=k+1; j<=n; j++)
{
++nr;
if(nr==aux)
{
++nr;
aux=a[++r][k];
}
a[i][j]=nr;
}
}
for(int i=1; i<=n; i++)
{
for(int j=1; j<n; j++)
printf("%d ",a[i][j]);
printf("%d\n",a[i][n]);
}
return 0;
}