Cod sursa(job #3193080)

Utilizator Cezar2009Cezar Mihai Titihazan Cezar2009 Data 13 ianuarie 2024 22:41:59
Problema Oo Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.63 kb
//https://infoarena.ro/problema/oo
#include <bits/stdc++.h>
using namespace std;

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

int n,v[100010],di[100010];
int rez(int in,int sf)
{
    int i;
    for(i=1;i<=n+3;i++)
    {
        di[i]=0;
    }
    i=in;
    di[in+1]=v[in]+v[in+1];
    for(i=in+2;i<=sf;i++)
    {
        di[i]=max(di[i-3]+v[i]+v[i-1],di[i-1]);
    }
    return di[sf];
}
int main()
{
    fin>>n;
    for(int i=1;i<=n;i++)
    {
        fin>>v[i];
    }
    v[n+1]=v[1];
    int r1=rez(1,n-1);
    int r2=rez(2,n);
    int r3=rez(3,n+1);
    fout<<max(r1,max(r2,r3));
    return 0;
}