Pagini recente » Cod sursa (job #3167236) | Cod sursa (job #2436203) | Cod sursa (job #2939426) | Cod sursa (job #2558099) | Cod sursa (job #811304)
Cod sursa(job #811304)
#include <fstream>
#include <algorithm>
using namespace std;
int n, v[100005], a[100005], b[100005], c[100005], sol;
inline void Read()
{
ifstream f("oo.in");
f>>n;
int i;
for(i=1; i<=n; i++)
f>>v[i];
f.close();
}
inline void Solve()
{
int i;
v[n+1] = v[1];
a[2] = v[1]+v[2];
b[3] = v[2]+v[3];
c[4] = v[3]+v[4];
//caz 1
for(i=3; i<n; i++)
a[i] = max(a[i-1], a[i-3]+v[i-1]+v[i]);
//caz 2
for(i=4; i<=n; i++)
b[i] = max(b[i-1], b[i-3]+v[i-1]+v[i]);
//caz 3
for(i=5; i<=n+1; i++)
c[i] = max(c[i-1], c[i-3]+v[i-1]+v[i]);
sol = max(a[n-1], max(b[n], c[n+1]));
}
inline void Write()
{
ofstream g("oo.out");
g<<sol<<"\n";
g.close();
}
int main()
{
Read();
Solve();
Write();
return 0;
}