Cod sursa(job #306836)

Utilizator runnaway90Oprescu Radu Constantin runnaway90 Data 21 aprilie 2009 23:47:40
Problema Multimi2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.63 kb
#include<stdio.h>

long long n;
int a[1000002];
void rezolva();

int main(){
    freopen("multimi2.in","r",stdin);
    freopen("multimi2.out","w",stdout);

    scanf("%lld", &n);
    rezolva();

    return 0;
}

void rezolva(){
long long s = 0, sum = n * (n+1) / 4;
int i, nr = 0;
    for (i = n; i >= 1; --i)
        if (s + i <= sum)
            s += i, a[i] = 1, nr++;

    printf("%d\n", n * (n+1) / 2 - 2 * s);
    printf("%d\n", nr);

    for (i = 1; i <= n; i++)
        if (a[i]) printf("%d ", i);

    printf("\n%d\n", n - nr);
    for (i = 1; i <= n; i++)
        if (!a[i]) printf("%d ", i);

}