Cod sursa(job #1546066)

Utilizator dnprxDan Pracsiu dnprx Data 7 decembrie 2015 17:33:29
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.81 kb
#include <bits/stdc++.h>

using namespace std;

int a[1000001], n;
long long s, s1, s2, suma;

int main()
{
    int i, p, k;
    ifstream fin("multimi2.in");
    fin >> n;
    fin.close();

    s = 1LL * n * (n + 1) / 2;
    s1 = s / 2 + s % 2;
    s2 = s / 2;
    suma = 0;
    k = 0;
    for (i = n; i >= 1 && suma + i <= s1; i--)
    {
        a[i] = 1;
        suma += i;
        k++;
    }
    if (suma < s1) { a[s1 - suma] = 1; k++;}

    s = s1 - s2;

    ofstream fout("multimi2.out");
    fout << s << "\n";
    fout << k << "\n";
    for (i = 1; i <= n; ++i)
        if (a[i] == 1) fout << i << " ";
    fout << "\n";
    p = n - k;
    fout << p << "\n";
    for (i = 1; i <= n; ++i)
        if (a[i] == 0) fout << i << " ";
    fout << "\n";
    fout.close();
    return 0;
}