Pagini recente » Cod sursa (job #1626009) | Cod sursa (job #3218934) | Cod sursa (job #301878) | Cod sursa (job #2855863) | Cod sursa (job #2752812)
#include <fstream>
using namespace std;
ifstream cin("tablete.in");
ofstream cout("tablete.out");
int a[1001][1001];
int vc[1000*1000+1];
int main()
{
int n,k,i,j,last,val;
cin>>n>>k;
if(k%2==0){
if(n%2==0)
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
cout<<(i-1)*n+j<<" ";
cout<<'\n';
}
else
{
val=n*n;
last=0;
for(i=1;i<=n;i++){
for(j=1;j<n;j++)
{
last++;
cout<<last<<" ";
}
cout<<val<<'\n';
val--;
}
}
}
if(k%2==1)
{
a[1][k]=k+1;
vc[k+1]=1;
val=a[1][k];
for(i=2;i<=n;i++)
{
if(i%2==1){
a[i][k]=val+k-1;
val+=k-1;
}
else{
a[i][k]=val+k+1;
val+=k+1;
}
vc[val]=1;
}
val=1;
for(i=1;i<=n;i++)
for(j=1;j<=k-1;j++)
{
while(vc[val] && val!=n*n)
{
val++;
}
a[i][j]=val;
vc[val]=1;
val++;
}
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)
{
while(vc[val] && val!=n*n)
{
val++;
}
a[i][j]=val;
vc[val]=1;
val++;
}
for(i=1;i<=n;i++){
for(j=1;j<=n;j++)
cout<<a[i][j]<<" ";
cout<<'\n';
}
}
return 0;
}