Cod sursa(job #1146272)
Utilizator | 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;
}