Pagini recente » Cod sursa (job #276117) | Cod sursa (job #2709903) | Cod sursa (job #3183613) | Cod sursa (job #2388775) | Cod sursa (job #2269292)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
const int NMAX = 100000;
int V[NMAX + 5], DP[NMAX + 5], N, ans;
int main()
{
fin >> N;
for(int i = 1; i <= N; i++)
fin >> V[i];
if(N == 2) {
fout << V[1] + V[2] << '\n';
return 0;
}
for(int j = 1; j < 4; j++)
{
for(int i = N - 1; i > j; i--)
DP[i] = max(DP[i + 1], max(DP[i + 2], V[i] + V[i + 1] + DP[i + 3]));
ans = max(ans, DP[j + 1]);
V[++N] = V[j], V[j] = 0;
}
fout << ans << '\n';
fin.close();
fout.close();
return 0;
}