Cod sursa(job #276286)

Utilizator Bogdan_tmmTirca Bogdan Bogdan_tmm Data 11 martie 2009 01:29:13
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.17 kb
#include<iostream.h>
#include<stdio.h>
FILE *f=fopen("multimi2.in","r"),*g=fopen("multimi2.out","w");
int main()
{
   int n,i,MOD;
   fscanf(f,"%d",&n);
   MOD=n%4;
   switch(MOD)
   {
   case 0:{
           fprintf(g,"0\n%d\n1 4 ",n/2);
           for(i=8;i<=n;i+=4)
             fprintf(g,"%d %d ",i-3,i);
           fprintf(g,"\n%d\n2 3 ",n/2);
           for(i=8;i<=n;i+=4)
             fprintf(g,"%d %d ",i-2,i-1);
           break;
           }
   case 1:{
	   fprintf(g,"1\n%d\n1 ",n/2+1);
           for(i=5;i<=n;i+=4)
             fprintf(g,"%d %d ",i-3,i);
           fprintf(g,"\n%d\n",n/2);
           for(i=5;i<=n;i+=4)
             fprintf(g,"%d %d ",i-2,i-1);
           break;
           }
   case 2:{
	   fprintf(g,"1\n%d\n1 ",n/2);
	   for(i=3;i<=n;i+=4)
	     fprintf(g,"%d %d ",i,i+3);
	   fprintf(g,"\n%d\n2 ",n/2);
           for(i=3;i<=n;i+=4)
	     fprintf(g,"%d %d ",i+1,i+2);
	   break;
           }
   case 3:{
	   fprintf(g,"0\n%d\n1 2 ",n/2+1);
	   for(i=4;i<=n;i+=4)
	     fprintf(g,"%d %d ",i,i+3);
	   fprintf(g,"\n\%d\n3 ",n/2);
	   for(i=4;i<=n;i+=4)
	     fprintf(g,"%d %d ",i+1,i+2);
	   break;
	   }
  }
  return 0;
}