Pagini recente » Cod sursa (job #2952430) | Cod sursa (job #375953) | Cod sursa (job #988002) | Cod sursa (job #2083037) | Cod sursa (job #2756391)
#include <fstream>
#define NMAX 1000*1000
using namespace std;
ifstream cin("tablete.in");
ofstream cout("tablete.out");
int vc[NMAX+1];
int main()
{
int n,k;
cin>>n>>k;
if (k%2==0 && n%2==0){
for (int i=1; i<=n*n; i++)
if (i%n)
cout<<i<<" ";
else cout<<i<<"\n";
}
else if (k%2==0 && n%2!=0){
int nr = n*(n-1);
for (int i=1; i<=nr; i++)
if (i%(n-1))
cout<<i<<" ";
else cout<<i<<" "<<nr+(i/n)+1<<"\n";
}
else{
int nr1 = 0, nr2;
if (k%2!=0 && n%2==0)
{
for (int i=1; i<=n*n; i++)
if ((i/n+1)%2==1){
if (nr1==0)
nr1 = i;
for (int j=i; j<i+n && j<=n*n; j++)
if (j%n==0)
vc[j+k+1]=1, cout<<j+k+1<<"\n";
else
vc[j+1]=1, cout<<j+1<<" ";
i+=n-1;
}
else if (nr1)
{
for (int j=nr1; j<nr1+2*n && j<=n*n; j++)
if (!vc[j])
vc[j]=1, cout<<j<<" ";
cout<<"\n";
i = nr1+2*n-1;
nr1=0;
}
}
}
return 0;
}