Cod sursa(job #744986)

Utilizator MagnvsDaniel Constantin Anghel Magnvs Data 10 mai 2012 12:47:01
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.01 kb
#include <stdio.h>

int main()
{
 long n,i;
 freopen("multimi2.in","r",stdin);
 freopen("multimi2.out","w",stdout);
 scanf("%ld",&n);
 if (n%4==0)
 {
  printf("%c\n%ld\n",'0',n/2);
  for (i=1;i<n/2+1;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+1,' ');
  printf("\n%ld\n",n/2);
  for (i=2;i<n/2+1;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+1,' ');
 }
 else if (n%4==1)
 {
  printf("%c\n%ld\n%s",'1',n/2+1,"1 ");
  for (i=3;i<n/2+2;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+2,' ');
  printf("\n%ld\n",n/2);
  for (i=2;i<n/2+1;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+2,' ');
 }
 else if (n%4==2)
 {
  printf("%c\n%ld\n%s",'1',n/2,"1 ");
  for (i=3;i<n/2+1;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+3,' ');
  printf("\n%ld\n",n/2);
  printf("%s","2 ");
  for (i=4;i<n/2+2;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+3,' ');
 }
 else
 {
  printf("%c\n%ld\n%s",'0',n/2+1,"1 2 ");
  for (i=4;i<n/2+2;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+4,' ');
  printf("\n%ld\n",n/2);
  printf("%s","3 ");
  for (i=5;i<n/2+3;i=i+2) printf("%ld%c%ld%c",i,' ',n-i+4,' ');
 }
 return 0;
}