Cod sursa(job #985509)

Utilizator dobrebogdanDobre Bogdan Mihai dobrebogdan Data 17 august 2013 12:07:47
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.46 kb
#include<stdio.h>
int main()
{
    freopen("multimi2.in","r",stdin);
    freopen("multimi2.out","w",stdout);
    unsigned n,i,l,m;
    scanf("%u",&n);
    if(n%2==0)
    {
        l=n/2;
        if(l%2==0)
        {
            printf("0\n%u\n",l);
            for(i=1;i<=l;i=i+2)
                printf("%u %u ",i,n-i+1);
            printf("\n%u\n",l);
            for(i=2;i<=l;i=i+2)
                printf("%u %u ",i,n-i+1);
        }
        else
        {
             printf("1\n%u\n",l);
            for(i=1;i<l;i=i+2)
                printf("%u %u ",i,n-i+1);
                printf("%u ",l);
            printf("\n%u\n",l);
            for(i=2;i<=l;i=i+2)
                printf("%u %u ",i,n-i+1);
                printf("%u ",n-l+1);
        }
    }
    else
    {
        m=n-3;
        l=m/2;
        if(l%2==0)
        {
            printf("0\n%u\n1 2 ",n/2+1);
            for(i=1;i<=l;i=i+2)
                printf("%u %u ",i+3,m-i+4);
            printf("\n%u\n3 ",n/2);
            for(i=2;i<=l;i=i+2)
                printf("%u %u ",i+3,m-i+4);
        }
        else
        {
             printf("1\n%u\n3 ",n/2);
            for(i=1;i<l;i=i+2)
                printf("%u %u ",i+3,m-i+4);
                printf("%u ",l+3);
                printf("\n%u\n1 2 ",n/2+1);
            for(i=2;i<=l;i=i+2)
                printf("%u %u ",i+3,m-i+4);
                printf("%u ",m-l+4);
        }
    }
    return 0;
}