Cod sursa(job #246485)

Utilizator doizeceAdi Bass doizece Data 20 ianuarie 2009 22:06:45
Problema Multimi2 Scor 60
Compilator c Status done
Runda Arhiva de probleme Marime 1.62 kb
#include <stdio.h>

int main(void)
{
    FILE *fin,*fout;

long int n ;
long int vstart,add;
long int i;


fin = fopen("multimi2.in","r");

fscanf(fin,"%li",&n);

fclose(fin);

fout = fopen("multimi2.out","w");

if (n==2) fprintf(fout,"1\n1\n1\n1\n2");
if (n==3) fprintf(fout,"0\n2\n1 2\n1\n3");

if(n%2==0) {
           fprintf(fout,"0\n%li\n",n/2);
            vstart=0;
            add=1;
                for(i=0;i<=n/2-1;i++)
                {
                    vstart+=add;
                  fprintf(fout,"%li ",vstart);
                  if(add==1) add=3;else if(add=3) add=1;
                }

                fprintf(fout,"\n%li\n",n/2);
                 vstart=-1;
            add=3;
                for(i=0;i<=n/2-1;i++)
                {
                    vstart+=add;
                  fprintf(fout,"%li ",vstart);
                  if(add==1) add=3;else if(add=3) add=1;
                }


            }

            else
            {
                fprintf(fout,"1\n%i\n1 ",n/2+1);
                vstart=1;
            add=1;
                for(i=0;i<n/2;i++)
                {
                    vstart+=add;
                  fprintf(fout,"%i ",vstart);
                  if(add==1) add=3;else if(add=3) add=1;
                }

            fprintf(fout,"\n%i\n3 ",n/2);
                vstart=3;
            add=1;
                for(i=0;i<n/2-1;i++)
                {
                    vstart+=add;
                  fprintf(fout,"%i ",vstart);
                  if(add==1) add=3;else if(add=3) add=1;
                }


            }
return 0;

}