Pagini recente » Cod sursa (job #1442594) | Cod sursa (job #1746666) | Cod sursa (job #2165183) | Cod sursa (job #440369) | Cod sursa (job #3222188)
#include<fstream>
#include<iostream>
#include<cmath>
using namespace std;
ifstream fin("multimi2.in");
ofstream fout("multimi2.out");
int v[1000002],sn[1000002],sI[1000002];
int main(){
int n,i,j,dif,si,sj,nrcf1,nrcf2;
fin>>n;
for(i=1;i<=n;i++){
v[i]=i;
}
sn[0]=v[0];
for(i=1;i<=n;i++){
sn[i]=sn[i-1]+v[i];
}
sI[n]=v[n];
for(i=n-1;i>0;i--){
sI[i]=sI[i+1]+v[i];
}
if(n>2){
i=1;
j=n-1;
dif=100000000;
while(i<n){
si = sn[i];
sj= sI[j];
if(dif>(abs(si-sj))){
nrcf1=i;
nrcf2=n-i;
dif=abs(si-sj);
}
if(dif>(abs(sj-si))){
nrcf1=j;
nrcf2=n-j;
dif=abs(sj-si);
}
cout<<si<<' '<<sj<<endl;
i++;
j++;
}
}
else{
dif=1;
nrcf1=nrcf2=1;
}
fout<<dif<<endl;
fout<<nrcf1<<endl;
for(i=1;i<=nrcf1;i++){
fout<<v[i]<<' ';
}
fout<<endl;
fout<<nrcf2<<endl;
for(i=nrcf1+1;i<=n;i++){
fout<<v[i]<<' ';
}
fin.close();
fout.close();
return 0;
}