Pagini recente » Cod sursa (job #3038356) | Cod sursa (job #985903) | Cod sursa (job #3292909) | Borderou de evaluare (job #2100050) | Cod sursa (job #3149902)
#include <iostream>
#include <fstream>
using namespace std;
long long int n,v[1000002];
long long int s1[1000002];
long long int s2[1000002];
long long int df[1000002];
long long int minn=1e9;
long long int a,b;
ifstream fin("multimi2.in");
ofstream fout("multimi2.out");
int main()
{
fin>>n;
for(int i=1;i<=n;++i){
v[i]=i;
}
s1[0]=0;
for(int i=1;i<=n;++i){
s1[i]=s1[i-1]+v[i];
}
for(int i=n;i>=1;i--){
s2[i]=s2[i+1]+v[i];
}
for(int i=1;i<=n;++i){
df[i]=s1[i-1]-s2[i];
if(abs(df[i])<=minn){
minn=abs(df[i]);
a=i-1;
b=i;
}
}
fout<<minn<<endl;
fout<<a<<endl;
for(int i=1;i<=a;++i){
fout<<i<<" ";
}
fout<<endl;
fout<<n-b+1<<endl;
for(int i=b;i<=n;++i){
fout<<i<<" ";
}
return 0;
}