Cod sursa(job #681088)
| Utilizator | Data | 16 februarie 2012 15:28:56 | |
|---|---|---|---|
| Problema | Oo | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include<iostream>
#include<fstream>
using namespace std;
int a[100005],v[100005],sol;
void rez(int s, int f)
{
int i;
v[s-2]=0;
v[s-1]=a[s-1]+a[s-2];
for (i=s; i<=f; i++)
{
v[i]=max(v[i-1], v[i-3]+a[i]+a[i-1]);
sol=max (s, v[i]);
}
}
int main(void)
{
int n,i;
fstream f,g;
f.open("oo.in",ios::in);
g.open("o.out",ios::out);
f>>n;
for (i=1;i<=n;i++)
f>>a[i];
a[n+1]=a[1];
rez(3,n-1);
rez(4,n);
rez(5,n+1);
g<<sol;
}