Cod sursa(job #1771117)

Utilizator silkMarin Dragos silk Data 5 octombrie 2016 11:20:10
Problema Multimi2 Scor 10
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.69 kb
#include <cstdio>
#define NMax 1000000
#define ABS(x)((x)>0?(x):(-(x)))
#define ll long long

ll sum[NMax+1];

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

    int i,N,nr1,nr2,idx;
    ll dif = 1LL<<47;

    scanf("%d",&N);
    for(i = 1; i <= N; ++i) sum[i] = sum[i-1] + i;
    for(i = 1; i <= N; ++i)
    {
        if( ABS( sum[N] - sum[i] - sum[i] ) < dif ) { dif = ABS( sum[N] - sum[i] - sum[i] ); idx = i; }
    }

    printf("%lld\n",dif);
    printf("%d\n",idx);
    for(i = 1; i <= idx; ++i) printf("%d ",i);
    printf("\n");
    printf("%d\n",N-idx);
    for(i = idx+1; i <= N; ++i) printf("%d ",i);



return 0;
}