Cod sursa(job #1237176)

Utilizator ArchazeyBaltatu Andrei-Mircea Archazey Data 3 octombrie 2014 11:35:48
Problema Oo Scor 60
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.49 kb
#include<bits/stdc++.h>
using namespace std;

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

const int NMAX=100005;

int n,a[NMAX],dp1[NMAX],dp2[NMAX];

int main()
{
    int i;
    fin>>n;
    for (i=2;i<=n+1;i++) fin>>a[i];
    if (n==2) {cout<<a[1]+a[2]<<"\n";return 0;}
    for (i=4;i<=n+1;i++)
        dp1[i]=max(a[i]+a[i-1]+dp1[i-3],dp1[i-1]);
    for (i=3;i<=n;i++)
        dp2[i]=max(a[i]+a[i-1]+dp2[i-3],dp2[i-1]);
    fout<<max(dp2[n],dp1[n+1])<<"\n";
    return 0;
}