Cod sursa(job #842230)

Utilizator emyll96Constantinescu Emil emyll96 Data 26 decembrie 2012 15:09:16
Problema Multimi2 Scor 50
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.04 kb
#include<stdio.h>
FILE*A,*B;
int n,i;
int main()
{
	A=fopen("multimi2.in","r");
	B=fopen("multimi2.out","w");
	fscanf(A,"%llu",&n);
	if(n%4==0)
	{
		fprintf(B,"0\n%d\n",n/2);
		for(i=1;i<=n/4;i++)fprintf(B,"%d %d ",i,(n-i+1));
		fprintf(B,"\n%d\n",n/2);
		for(i=n/4+1;i<=n/2;i++)fprintf(B,"%d %d ",i,n-i+1);
	}
	else if(n%4==1)
	{
		fprintf(B,"%d\n%d\n",(n+1)/2,n/2);
		for(i=1;i<=n/4;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"\n%d\n",n/2+1);
		for(i=n/4+1;i<=n/2;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"%d",n/2+1);
	}
	else if(n%4==2)
	{
		fprintf(B,"1\n%d\n",n/2);
		for(i=1;i<=n/4;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"%d",n/2);
		fprintf(B,"\n%d\n",n/2);
		for(i=n/4+1;i<=n/2-1;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"%d",n/2+1);
	}
	else
	{
		fprintf(B,"%d\n%d\n",n/2-1,n/2+1);
		for(i=1;i<=n/4;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"%d %d",n/2,n/2+1);
		fprintf(B,"\n%d\n",n/2);
		for(i=n/4+1;i<=n/2-1;i++)fprintf(B,"%d %d ",i,n-i+1);
		fprintf(B,"%d",n/2+2);
	}
	fclose(A);fclose(B);
}