Cod sursa(job #1298821)

Utilizator diana97Diana Ghinea diana97 Data 23 decembrie 2014 10:38:07
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <iostream>
#include <fstream>

using namespace std;

ifstream f ("multimi2.in");
ofstream g ("multimi2.out");

const int NMAX = 1000000 + 1;

int n;
bool suma[NMAX];

void rezolva() {
    long long s = 1LL * n * (n + 1) / 2 / 2;
    int nr = 0;
    for (int i = n; i >= 1; i--)
        if (s >= i) {
            s -= i;
            nr++;
            suma[i] = true;
        }
    g << (1LL * n * (n + 1) / 2 % 2) << '\n';
    g << nr << '\n';
    for (int i = 1; i <= n; i++)
        if (suma[i]) g << i << '\n';
    g << n - nr << '\n';
    for (int i = 1; i <= n; i++)
        if (!suma[i]) g << i << '\n';
}

int main() {
    f >> n;
    rezolva();
    return 0;
}