Pagini recente » Cod sursa (job #373849) | Cod sursa (job #464057) | Cod sursa (job #2496935) | Cod sursa (job #134900) | Cod sursa (job #284926)
Cod sursa(job #284926)
#include<stdio.h>
FILE *in=fopen("tablete.in","rt");
FILE *out=fopen("tablete.out","wt");
long int nr,a[1001][1001],last;
int n,k;
void afisare()
{
int i,j;
for(i=1;i<=n;i++)
{
for(j=1;j<=n;j++)
{
fprintf(out,"%ld ",a[i][j]);
nr++;
}
fprintf(out,"\n");
}
}
int main()
{
int i,j;
fscanf(in,"%d",&n);
fscanf(in,"%d",&k);
nr=1;
if(n%2==0 && k%2==0)
{
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
{
a[i][j]=nr;
nr++;
}
}
else
if(n%2==0 && k%2==1)
{
nr=2;
for(i=1;i<=n-1;i++)
for(j=1;j<=n;j++)
{
a[i][j]=nr;
nr++;
}
a[n-1][n]=n*n;
a[n][1]=1;
nr--;
for(j=2;j<=n;j++) a[n][j]=nr++;
}
else
if(n%2==1 && k%2==0)
{
nr=2;last=1;
for(i=1;i<=n;i++)
{
if(i%2==1)
{
a[i][1]=last;
for(j=2;j<=n;j++)
{
a[i][j]=nr;
nr++;
}
}
else
{
last=nr;
nr=nr+1;
for(j=1;j<=n;j++)
{
a[i][j]=nr;
nr++;
}
}
}
}
else
if(n%2==1 && k%2==1)
{
nr=1;
for(i=1;i<=n-1;i++)
if(i%2==1)
for(j=1;j<=n;j++)
{
if(j==k)
{
last=nr;nr++;
}
a[i][j]=nr; nr++;
}
else
{
a[i][1]=last;
for(j=2;j<=n;j++)
a[i][j]=nr++;
}
a[n-1][n]=n*n;
nr--;
for(j=1;j<=n;j++)
a[i][j]=nr++;
}
afisare();
return 0;
}