Cod sursa(job #1732825)

Utilizator narcios_neculaNarcis Necula narcios_necula Data 22 iulie 2016 17:03:16
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.54 kb
#include <fstream>
using namespace std;
ifstream f("multimi2.in");
ofstream g("multimi2.out");
int n,i;
int main()
{
    f >> n;
    if(n % 4 == 0)
    {
        g << 0 << '\n' << n / 2 << '\n';
        for(i = 1; i <= n / 4; ++i)
            g << i << " " << n - i + 1 << " ";
        g << '\n' << n / 2 << '\n';
        for(i = n / 4 + 1; i <= n / 2; ++i)
            g << i << " " << n - i + 1 << " ";
        g << '\n';
    }
    else
    if(n % 4 == 1)
    {
        g << 1 << '\n' << n / 2 + 1 << '\n';
        g << 1 << " ";
        for(i = 2; i <= n / 4 + 1; ++i)
            g << i << " " << n - i + 2 << " ";
        g << '\n' << n / 2 << '\n';
        for(i = n / 4 + 2; i <= n / 2 + 1; ++i)
            g << i << " " << n - i + 2 << " ";
        g << '\n';
    }
    else
    if(n % 4 == 2)
    {
        g << 1 << '\n' << n / 2 << '\n';
        g << 1 << " ";
        for(i = 3; i <= n / 4 + 2; ++i)
            g << i << " " << n - i + 3 << " ";
        g << '\n' << n / 2 << '\n';
        g << 2 << " ";
        for(i = n / 4 + 3; i <= n / 2 + 1; ++i)
            g << i << " " << n - i + 3 << " ";
        g << '\n';
    }
    else
    {
        g << 0 << '\n' << n / 2 + 1 << '\n';
        g << 1 << " " << 2 << " ";
        for(i = 4; i <= n / 4 + 3; ++i)
            g << i << " " << n - i + 4 << " ";
        g << '\n' << n / 2 << '\n' << 3 << " ";
        for(i = n / 4 + 4; i <= n / 2 + 2; ++i)
            g << i << " " << n - i + 4 << " ";
        g << '\n';
    }
    return 0;
}