Pagini recente » Cod sursa (job #397115) | Cod sursa (job #505573) | Cod sursa (job #1893849) | Cod sursa (job #474879) | Cod sursa (job #2316381)
#include <bits/stdc++.h>
using namespace std;
int dp[1005][1005];
int main()
{
freopen("tablete.in","r",stdin);
freopen("tablete.out","w",stdout);
int n,k;
scanf("%d%d",&n,&k);
int i,j;
if(k%2==0)
{
int cnt=0;
for(i=1;i<=n;i++)
for(j=1;j<=k;j++)
dp[i][j]=++cnt;
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)dp[i][j]=++cnt;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ",dp[i][j]);
printf("\n");
}
return 0;
}
if(n%2==0)
{
int cnt=0;
for(i=1;i<=n;i+=2)
{
++cnt;
int l=cnt;
for(j=1;j<=k;j++)
{
dp[i][j]=++cnt;
}
dp[i+1][1]=l;
for(j=2;j<=k;j++)
dp[i+1][j]=++cnt;
}
for(i=1;i<=n;i++)
for(j=k+1;j<=n;j++)dp[i][j]=++cnt;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ",dp[i][j]);
printf("\n");
}
return 0;
}
int cnt=0;
for(i=1;i<n;i+=2)
{
++cnt;
int l=cnt;
for(j=1;j<=k;j++)
{
dp[i][j]=++cnt;
}
dp[i+1][1]=l;
for(j=2;j<=k;j++)
dp[i+1][j]=++cnt;
}
dp[1][k+1]=++cnt;
for(i=1;i<=k;i++)
dp[n][i]=++cnt;
for(i=k+2;i<=n;i++)dp[1][i]=++cnt;
for(i=2;i<=n;i++)
for(j=k+1;j<=n;j++)dp[i][j]=++cnt;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
printf("%d ",dp[i][j]);
printf("\n");
}
return 0;
}