Cod sursa(job #3231206)

Utilizator eduardbuchmaneduardbuchman eduardbuchman Data 25 mai 2024 13:39:05
Problema Oo Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.61 kb
#include <fstream>
#define NMAX 100000

using namespace std;

ifstream in("oo.in");
ofstream out("oo.out");

int n, v[NMAX + 5], dp[NMAX + 5];

int cules(int start) {
    dp[start - 1] = 0;
    dp[start] = 0;
    dp[start + 1] = dp[start + 2] = dp[start + 3] = v[start] + v[start + 1];
    for (int i = start + 4; i <= n + 1; i++)
        dp[i] = max(dp[i - 1], dp[i - 3] + v[i - 1] + v[i]);
    return dp[n + start - 2];
}

int main()
{
    in >> n;
    for (int i = 1; i <= n; i++)
        in >> v[i];
    v[n + 1] = v[1];
    out << max(cules(1), max(cules(2), cules(3)));
    return 0;
}