Cod sursa(job #2986422)

Utilizator MacraAlexandruMacra Alexandru MacraAlexandru Data 28 februarie 2023 16:54:33
Problema Oo Scor 40
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <bits/stdc++.h>
#define M 100010
using namespace std;
ifstream f("oo.in");
ofstream g("oo.out");
int n, v[M], s[M], m[M];
int main()
{
    f>>n;
    for(int i=1; i<=n; i++)f>>v[i];
    for(int i=1; i<n; i++)s[i]=v[i]+v[i+1];
    s[n]=v[1]+v[n];
    for(int i=1; i<=6; i++)s[n+i]=s[i];
    //n+=6;
    //for(int i=1; i<=n+6; i++)g<<s[i]<<" ";
    //g<<endl;
    for(int i=6; i<=n+6; i++)
    {
        if(m[i-3] && m[i-4] && m[i-5])m[i]=max(m[i-3]+s[i],max(m[i-4]+s[i], m[i-5]+s[i]));
        else if(m[i-3] && m[i-4])m[i]=max(m[i-3]+s[i], m[i-4]+s[i]);
        else if(m[i-3])m[i]=m[i-3]+s[i];
        else m[i]=s[i];
    }
    //g<<endl;
    //for(int i=1; i<=n+6; i++)g<<m[i]<<" ";
    g<<m[n+6]-s[n+6];
    return 0;
}