Cod sursa(job #477658)

Utilizator c_adelinaCristescu Adelina c_adelina Data 15 august 2010 20:31:13
Problema Tablete Scor 40
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <cstdio>
int main()
{
	int n,k,i,j,r=0,last=0;
	
	freopen("tablete.in","r",stdin);
	freopen("tablete.out","w",stdout);
	scanf("%d %d",&n,&k);
	r=k%2;
	if (n%2==0)
	{
		if (r==1)
		for (i=n/2;i>0;--i)
		{

			for (j=2;j<=n;++j) printf("%d ",last+j);
			printf("%d\n%d ",last+2*n,last+1);
			for (j=1;j<n;++j) printf("%d ",last+n+j);
			printf("\n");
			last+=2*n;
		} else
			for (i=1;i<=n;++i)
			{
				for (j=1;j<=n;++j)
					printf("%d ",(i-1)*n+j);
				printf("\n");
			}
	} else
		if ((n%4==3) || ((n%4==1) && (r==0)))
		{
			for (i=1;i<=n;++i)
			 if ((i%2==r) && (i%4!=0))
			 {
				 for (j=2;j<=n;++j)
					 printf("%d ",last+j);
				 printf("%d\n",last+3*n);
				 last+=n;
			 } else
				 if (i%2==r)
				 {
					 printf("%d ",last-2*n+1);
					 for (j=1;j<n;++j)
						 printf("%d ",last+j);
					 printf("\n");
					 last+=n;
				 } else
				 {
					 for (j=1;j<=n;++j) printf("%d ",j+last);
					 printf("\n");last+=n;
				 }  
		} else
			
return 0;}