Mai intai trebuie sa te autentifici.
Cod sursa(job #2027890)
Utilizator | Data | 26 septembrie 2017 20:46:03 | |
---|---|---|---|
Problema | Oo | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.74 kb |
#include <iostream>
#include <fstream>
#include <vector>
#include <cstring>
#define mod 30011
//i'm never leaving this project
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int n,i,j,v[100005],d1[100005],d2[100005],d3[100005];
int main()
{
f>>n;
for(i=1;i<=n;i++) f>>v[i];
d1[2]=v[1]+v[2];
d1[3]=max(d1[2],v[2]+v[3]);
for(i=4;i<n;i++) d1[i]=max(d1[i-1],d1[i-3]+v[i-1]+v[i]);
v[n+1]=v[1];
d2[3]=v[2]+v[3];
d2[4]=max(d2[3],v[3]+v[4]);
for(i=5;i<=n;i++) d2[i]=max(d2[i-1],d2[i-3]+v[i-1]+v[i]);
d3[4]=v[3]+v[4];
d3[5]=max(d3[4],v[4]+v[5]);
for(i=6;i<=n+1;i++) d3[i]=max(d3[i-1],d3[i-3]+v[i-1]+v[i]);
g<<max(d1[n-1],max(d2[n],d3[n+1]))<<'\n';
return 0;
}