Pagini recente » Cod sursa (job #2690098) | Cod sursa (job #486775) | Cod sursa (job #2702386) | Cod sursa (job #2964252) | Cod sursa (job #1716383)
#include <cstdio>
using namespace std;
int n,k;
int main()
{
freopen("tablete.in", "r", stdin);
freopen("tablete.out", "w", stdout);
scanf("%d%d", &n, &k);
if(n%2==0){
if(k%2==0){
int nr=0;
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j){
++nr;
printf("%d ",nr);
}
printf("\n");
}
}
else{
int nr=1;
for(int i=1;i<n-1;++i){
for(int j=1;j<=n;++j){
++nr;
printf("%d ",nr);
}
printf("\n");
}
printf("1 ");
int aux=nr;
nr=nr+n-1;
for(int j=2;j<=n;++j)
++nr,printf("%d ", nr);
nr=aux;
printf("\n");
for(int j=1;j<n;++j)
++nr,printf("%d ", nr);
printf("%d",n*n);
}
}
else{
int a[n+1][n+1];
if(k%2==0){
int nri=-1,nrp=0;
for(int i=1;i<n;++i){
if(i%2==1)
for(int j=1;j<=n;++j){
nri+=2;
a[j][i]=nri;
}
else
for(int j=1;j<=n;++j){
nrp+=2;
a[j][i]=nrp;
}
}
for(int i=1;i<=n;++i)
a[i][n]=++nrp;
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j)
printf("%d ", a[i][j]);
printf("\n");
}
}
else{
int nr=0;
for(int i=1;i<n;++i){
++nr;a[i][1]=nr;
++nr;a[i][2]=nr;
}
++nr;a[n][1]=nr;
nr+=2;a[n][2]=nr;
int nrp=n*2-2;
for(int i=3;i<n;++i){
if(i%2==1){
for(int j=1;j<=n;++j){
nrp+=2;
a[j][i]=nrp;
}
}
else{
for(int j=1;j<=n;++j){
nr+=2;
a[j][i]=nr;
}
}
}
a[1][n]=nrp+2;
for(int i=2;i<=n;++i){
++nr;
a[i][n]=nr;
}
for(int i=1;i<=n;++i){
for(int j=1;j<=n;++j)
printf("%d ", a[i][j]);
printf("\n");
}
}
}
return 0;
}