Cod sursa(job #150687)

Utilizator jeanFMI - Petcu Ion Cristian jean Data 7 martie 2008 11:44:24
Problema Multimi2 Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.44 kb
#include<fstream.h>
long n,i=1,m;
int main()
{
ifstream f("multimi2.in");
ofstream g("multimi2.out");
f>>n;
if(n==2) g<<"1"<<'\n'<<"1"<<'\n'<<"1"<<'\n'<<"1"<<'\n'<<"2";


else if(n==3) g<<"0"<<'\n'<<"2"<<'\n'<<"1"<<" "<<"2"<<'\n'<<"1"<<'\n'<<"3";


else if(n%2==0) { if(n%4==0)

		     {g<<"0"<<'\n'<<n/2<<'\n';
		       m=n;
		       while(i<m)
			{g<<i<<" "<<m<<" ";
			  i+=2;m-=2;
			}
		       g<<'\n'<<n/2<<'\n';
		      i=2;n--;
		       while(i<n)
			{g<<i<<" "<<n<<" ";
			  i+=2;n-=2;
			}
		     }
		  else
		    { g<<"1"<<'\n'<<n/2<<'\n';
		       m=n;
		      while((i+1)!=m)
		       {g<<i<<" "<<m<<" ";
			i+=2;m-=2;
		       }
		      g<<'\n'<<n/2<<'\n';
		      i=2;n--;
		      while(i<n)
		       {g<<i<<" "<<n<<" ";
			i+=2;n-=2;
		       }
		     }
                 }
else {
      if((n-3)%4==0)

       { g<<"0"<<'\n'<<n/2+1<<'\n'<<"1"<<" "<<"2"<<" ";
	  i=4;m=n;
	      while(i<m)
		  {g<<i<<" "<<m<<" ";
		   i+=2;m-=2;
		  }
	 g<<'\n'<<n/2<<'\n'<<"3"<<" ";
	  i=5;n--;
	       while(i<n)
		   {g<<i<<" "<<n<<" ";
		     i+=2;n-=2;
		   }
       }
   else
     {  g<<"1"<<'\n'<<n/2+1<<'\n'<<"1"<<" "<<"2"<<" ";
	 i=4;m=n;
	  while((i+1)!=m)
		  {g<<i<<" "<<m<<" ";
		   i+=2;m-=2;
		  }
       g<<i;
       g<<'\n'<<n/2<<'\n'<<"3"<<" "<<m<<" ";
       i=5;n--;
	     while(i<n)
		   {g<<i<<" "<<n<<" ";
		   i+=2;n-=2;
		   }
     }
 }
f.close();
g.close();
return 0;
}