Cod sursa(job #1363333)

Utilizator Andrei_PopaAndreiCDG Andrei_Popa Data 26 februarie 2015 21:33:58
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.53 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("multimi2.in");
ofstream g("multimi2.out");
int n,a,i;
int main()
{
    f>>n;
    if(n%4==0)
    {
        g<<"0"<<'\n';
        g<<n/2<<'\n';
        for(i=1;i<=n-3;i=i+4)
        g<<i<<' '<<i+3<<' ';

        g<<'\n';
        g<<n/2<<'\n';
        for(i=2;i<=n-2;i=i+4)
        g<<i<<' '<<i+1<<' ';
    }
    else
    {
        if(n%4==1)
        {
            g<<"1"<<'\n';
            g<<n/2+1<<'\n';
            g<<"1 ";
            for(i=2;i<=n;i=i+4)
            g<<i<<' '<<i+3<<' ';
            g<<'\n';
            g<<n/2<<'\n';
            for(i=3;i<=n;i=i+4)
            g<<i<<' '<<i+1<<' ';
        }
        else
        {
            if(n%4==2)
            {
                g<<"1"<<'\n';
                g<<n/2<<'\n';
                g<<"1 ";
                for(i=3;i<=n-3;i=i+4)
                g<<i<<' '<<i+3<<' ';
                g<<'\n';
                g<<n/2<<'\n';
                g<<"2 ";
                for(i=4;i<=n-2;i=i+4)
                g<<i<<' '<<i+1<<' ';
            }
            else
            if(n%4==3)
            {
                g<<"0"<<'\n';
                g<<n/2+1<<'\n';
                g<<"1 2 ";
                for(i=4;i<=n-3;i=i+4)
                g<<i<<' '<<i+3<<' ';
                g<<'\n';

                g<<n/2<<'\n';
                g<<"3 ";
                for(i=5;i<=n-2;i=i+4)
                g<<i<<' '<<i+1<<' ';
            }
        }
    }
    return 0;
}