Cod sursa(job #2240522)
Utilizator | Data | 13 septembrie 2018 17:38:43 | |
---|---|---|---|
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;
}