Cod sursa(job #2210695)
| Utilizator | Data | 7 iunie 2018 17:56:12 | |
|---|---|---|---|
| Problema | Oo | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.61 kb |
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
int n,i,D[100100],v[100100],maxim,r;
int main(){
fin>>n;
for(i=1;i<=n;i++)
fin>>v[i];
D[1]=0;
D[2]=0;
D[3]=v[2]+v[3];
for(i=4;i<=n;i++)
D[i]=max(v[i-1]+v[i]+D[i-3],D[i-1]);
r=D[n];
D[1]=0;
D[2]=v[2]+v[1];
D[3]=0;
for(i=4;i<n;i++)
D[i]=max(v[i-1]+v[i]+D[i-3],D[i-1]);
r=max(r,D[n-1]);
D[1]=0;
D[2]=0;
D[3]=0;
for(i=4;i<n-1;i++)
D[i]=max(v[i-1]+v[i]+D[i-3],D[i-1]);
fout<<max(r,D[n-2]+v[1]+v[n]);
return 0;
}
