Cod sursa(job #164432)

Utilizator andreeanasturelmonica andreeanasturel Data 24 martie 2008 10:48:39
Problema Multimi2 Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include<stdio.h>
int  main()
{long n,i,pp;
FILE * f,*g;
f=fopen("multimi2.in","r");
g=fopen("multimi2.out","w");
fscanf(f,"%ld",&n);
if(n==3)
  fprintf(g,"0\n1 2\n3");
else
 if(n%2==0)
   {fprintf(g,"0\n");
	fprintf(g,"%ld\n",n/2);
   for(i=1;i<=n/2;i+=2)
	 fprintf(g,"%ld %ld ",i,n-i+1);
   fprintf(g,"\n%ld\n",n/2);
   for(i=2;i<=n/2;i+=2)
	 fprintf(g,"%ld %ld ",i,n-i+1);
  }
 else
  if(n%2==1)
   {	fprintf(g,"1\n%ld\n1 2 ",n/2+1);
	pp=1;
	i=4;
	while(i<=n)
	   if(pp==1)
		 {fprintf(g,"%ld ",i);
		  i=i+3;
		  pp=0;
		  }
	   else
		 {
		 fprintf(g,"%ld ",i);
		 i=i+1;
		 pp=1;
		 }

	fprintf(g,"\n%ld\n3 ",n/2);
	pp=1;
	i=5;
	while(i<=n)
	 if(pp==1)
	   {
	   fprintf(g,"%ld ",i);
	   i=i+1;
	   pp=0;
	   }
	 else
	  {
	  fprintf(g,"%ld ",i);
	  i=i+3;
	  pp=1;
	  }
	}
fclose(f);
fclose(g);
return 0;
}