Cod sursa(job #120403)

Utilizator policamatei paul polica Data 5 ianuarie 2008 13:21:13
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.22 kb
#include<fstream.h>
//using namespace std;

ifstream f("multimi2.in");
ofstream g("multimi2.out");

int N;


int main()
{
   f>>N; f.close();

   if(N%2==0)

    if(N/2%2==0)

       { g<<0<<"\n";

	 g<<N/2<<"\n";

	 for(int i=1;i<=N/2-1;i=i+2) g<<i<<" "<<N-i+1<<" ";

	 g<<"\n"<<N/2<<"\n";

	 for(int j=2;j<=N/2;j=j+2) g<<j<<" "<<N-j+1<<" ";

	 g.close();
       }

     else{ g<<1<<"\n";

	   g<<N/2<<"\n";

	   for(int i=1;i<=N/2-1;i=i+2) g<<i<<" "<<N-i+1<<" ";

	   g<<N/2<<"\n";

	   g<<"\n"<<N/2<<"\n";

	   for(int j=2;j<=N/2-1;j=j+2) g<<j<<" "<<N-j+1<<" ";

	   g<<N/2+1;

	   g.close();
	 }


   else if(N/2%2==0)

	  { g<<1<<"\n";

	    g<<N/2+1<<"\n";

	    for(int i=2;i<=N/2;i=i+2)

	     g<<i<<" "<<N-i+2<<" ";

	    g<<1;

	    g<<"\n"<<N/2<<"\n";

	    for(int j=3;j<=N/2+1;j=j+2)

	     g<<j<<" "<<N-j+2<<" ";

	    g.close();
	  }

	else{ g<<0<<"\n";

	      g<<N/2+1<<"\n";

	      for(int i=2;i<=N/2-1;i=i+2)

	       g<<i<<" "<<N-i+2<<" ";

	      g<<N/2+1<<" ";

	      g<<1;

	      g<<"\n"<<N/2<<"\n";

	      for(int j=3;j<=N/2;j=j+2)

	       g<<j<<" "<<N-j+2<<" ";

	      g<<N/2+2;

	      g.close();
	    }


  return 0;
}