Cod sursa(job #301957)

Utilizator bugyBogdan Vlad bugy Data 8 aprilie 2009 16:01:18
Problema Multimi2 Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.45 kb
#include<iostream>            
#include<stdio.h>            
using namespace std;            
 int main()            
 {            
    FILE *f=fopen("multimi2.in","r"), *t=fopen("multimi2.out","w");            
 int i,n,s1,s2,g=2,j,g1=1,g2=1,d=0;            
 fscanf(f,"%d",&n);            
 s2=n;s1=1;              
 for(j=n-1;j>=1;j--)            
    for(i=2;i<=n;i++)            
      {if(g!=n)            
        { if(g==n-1)
            {if((s1+i)-s2)<(s1-(s2+j))			
				{s1=s1+i;g1++;}
				else
					{s2=s2+j; g2++;i--;j--;}
			}
	    else
		  {
			if(s1<=s2)            
              {s1=s1+i;g1++; }            
            else              
            if(s1>s2)            
                {s2=s2+j; g2++;i--;j--;}            
		  }
            g=g1+g2;            
        }             
      else           
          if(g==n)              
            {i=n+1;j=0; break;}            
      }            
if(s1>s2)            
    d=s1-s2;            
else if(s2>s1)              
    d=s2-s1;            
fprintf(t,"%d\n",d);      
fprintf(t,"%d\n",g1);           
for(i=1;i<=g1;i++)            
    fprintf(t,"%d ",i);            
fprintf(t,"\n");      
fprintf(t,"%d\n",g2);             
for(i=g1+1;i<=n;i++)            
fprintf(t,"%d ",i);              
fprintf(t,"\n");         
           
             
              
fclose(f);            
fclose(t);            
 return 0;            
             
}