Pagini recente » Cod sursa (job #2625311) | Cod sursa (job #2297975) | Cod sursa (job #3171896) | Cod sursa (job #2675380) | Cod sursa (job #2392286)
#include <cstdio>
#include <deque>
FILE* FIN=freopen("oo.in","r",stdin);
FILE* FOUT=freopen("oo.out","w",stdout);
using namespace std;
int n,v[101024];
deque <int> q;
void cit()
{
int i,f,x,ex;
scanf("%d",&n);
scanf("%d",&f);
x=f;
for(i=0;i<n-1;i++)
{
ex=x;
scanf("%d",&x);
v[i]=x+ex;
}
v[n-1]=f+x;
}
int din(int st,int sp)
{
int i,x[2];
for(i=0;i<3;i++)
q.push_back(0);
for(i=st;i<sp;i++)
{
x[0]=q.front();
q.pop_front();
x[0]+=v[i];
x[1]=q.back();
x[0]=(x[0]>x[1])*(x[0]-x[1])+x[1];
q.push_back(x[0]);
}
x[0]=q.back();
for(i=0;i<3;i++)
q.pop_front();
return x[0];
}
int main()
{
int x[2];
cit();
x[0]=din(0,n-2);
x[1]=din(1,n-1);
x[0]=(x[0]>x[1])*(x[0]-x[1])+x[1];
x[1]=din(2,n);
x[0]=(x[0]>x[1])*(x[0]-x[1])+x[1];
printf("%d",x[0]);
return 0;
}