Cod sursa(job #2937439)

Utilizator LORDENVraja Luca LORDEN Data 10 noiembrie 2022 12:31:47
Problema Oo Scor 60
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.66 kb
#include <fstream>

using namespace std;

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

int n, eggs[100005], dp[100005] ;

int solve(int pos)
{

    dp[pos - 1] = dp[pos] = dp[pos + 1] = 0 ;
    dp[pos + 1] = eggs[pos] + eggs[pos + 1] ;
    for (int i = pos + 2 ; i <= n ; i ++)
        dp[i] = max (dp[i - 1], dp[i - 3] + eggs[i - 1] + eggs[i]) ;

    return dp[n - 2 + pos] ;

}

int main()
{

    int ans = 0 ;

    cin >> n ;

    for (int i = 1 ; i <= n ; i ++)
        cin >> eggs[i] ;

    eggs[n + 1] = eggs[1] ;

    for (int i = 1 ; i < 4 ; i ++)
        ans = max (ans, solve(i)) ;

    cout << ans ;

    return 0 ;

}