Pagini recente » Cod sursa (job #861956) | Cod sursa (job #1436880) | Cod sursa (job #3149245) | Cod sursa (job #1729928) | Cod sursa (job #2100515)
#include <fstream>
using namespace std;
int n,k,i,j,t,a[1001][1001];
int main()
{ifstream f("tablete.in");
ofstream g("tablete.out");
f>>n>>k;
if(k%2==0)
{t=1;
for(i=1;i<=n;i++)
for(j=1;j<=k;j++)
{a[i][j]=t;
t++;
}
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)
{a[i][j]=t;
t++;
}
}
if(n%2==0 and k%2==1)
{
for(j=1;j<=k;j++)
for(i=1;i<=n;i++)
{
if(i==1)
a[i][j]=j;
if(j==k and i==1)
a[i][j]=k+1;
if(i%2==0)
a[i][j]=a[i-1][j]+k-1;
if(i%2==1 and i!=1)
a[i][j]=a[i-1][j]+k+1;
}
t=n*k+1;
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)
{
a[i][j]=t;
t++;
}
}
if(n%2==1 and k%2==1)
{
for(j=1;j<=k;j++)
for(i=1;i<=n;i++)
{
if(i==1)
a[i][j]=j;
if(j==k and i==1)
a[i][j]=k+1;
if(i%2==0)
a[i][j]=a[i-1][j]+k-1;
if(i%2==1 and i!=1)
a[i][j]=a[i-1][j]+k+1;
}
t=n*k;
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)
{
a[i][j]=t;
if(t==n*k)
t+=2;
else
t++;
}
}
for(i=1;i<=n;i++)
{for(j=1;j<=n;j++)
g<<a[i][j]<<" ";
g<<"\n";}
return 0;
}