Pagini recente » Cod sursa (job #1980850) | Cod sursa (job #3277622) | Cod sursa (job #2654926) | Cod sursa (job #2917338) | Cod sursa (job #2254251)
/******************************************************************************
Online C++ Compiler.
Code, Compile, Run and Debug C++ program online.
Write your code in this editor and press "Run" button to compile and execute it.
*******************************************************************************/
#include <fstream>
#include <iostream>
#define NM 1001
using namespace std;
ifstream f("tablete.in");
ofstream g("tablete.out");
int ap[NM*NM], sol[NM][NM],vali,i,j,N,K;
int main()
{
f>>N>>K;
if(K%2==0)
{
vali=1;
for(i=1;i<=N;i++)
for(j=1;j<=K;j++)
{
sol[i][j]=vali;
vali++;
}
}
else if(N%2==0)
{
vali=1;
for(i=1;i<=N;i+=2)
{
for(j=1;j<=K;j++)
{
sol[i][j]=vali;
sol[i+1][j]=vali+K;
vali++;
}
vali=vali+K;
sol[i][K]++;
sol[i+1][1]--;
}
}
else
{
vali=1;
for(i=1;i<N;i+=2)
{
for(j=1;j<=K;j++)
{
ap[vali]=ap[vali+K]=1;
sol[i][j]=vali;
sol[i+1][j]=vali+K;
vali++;
}
vali=vali+K;
sol[i][K]++;
sol[i+1][1]--;
}
for(j=1;j<K;j++) sol[N][j]=(N-1)*K+j;
sol[N][K]=N*K+1;
}
vali=N*K+1;
for(i=1;i<=N;i++)
for(j=K+1;j<=N;j++)
{
sol[i][j]=vali;
++vali;
}
if(N%2&&K%2) sol[1][K+1]--;
for(i=1;i<=N;i++)
{
for(j=1;j<=N;j++) g<<sol[i][j]<<' ';
g<<'\n';
}
return 0;
}