Cod sursa(job #1933914)

Utilizator TherevengerkingSurani Adrian Therevengerking Data 20 martie 2017 23:47:59
Problema Oo Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.64 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("oo.in");
ofstream fout("oo.out");
const int Nmax=100000+5;
int n;
int a[Nmax],dp[Nmax];
int main()
{
    int sol=0;
    fin>>n;
    for(int i=1;i<=n;++i)fin>>a[i];
    dp[1]=a[1]+a[n];
    for(int i=2;i<=n-2;++i)
        dp[i]=max(dp[i-1],dp[i-3]+a[i]+a[i-1]);
    sol=max(sol,dp[n-2]);
    dp[1]=0;
    for(int i=2;i<=n-1;++i)
        dp[i]=max(dp[i-1],dp[i-3]+a[i]+a[i-1]);
    sol=max(dp[n-1],sol);
    dp[1]=0;dp[2]=0;
    for(int i=3;i<=n;++i)
        dp[i]=max(dp[i-1],dp[i-3]+a[i]+a[i-1]);
    sol=max(dp[n],sol);
    fout<<sol;
    return 0;
}