Cod sursa(job #1135240)

Utilizator TibixbAndrei Tiberiu Tibixb Data 7 martie 2014 15:48:05
Problema Oo Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include<fstream>
using namespace std;
int n, v[100003], d[100003], i, sol;
int maxim(int x, int y){
    return (x>y?x:y);
}
ifstream in("oo.in");
ofstream out("oo.out");
int main(){
    in>>n>>v[1]>>v[2];
    d[2]=v[1]+v[2];
    for(i=3; i<=n-1; i++){
        in>>v[i];
        d[i]=maxim(d[i-1], (v[i]+v[i-1]+d[i-3]));
    }
    sol=d[n-1];
    d[0]=0; d[1]=0; d[2]=0;
    d[3]=v[2]+v[3];
    for(i=4; i<=n; i++){
        d[i]=maxim(d[i-1], (v[i]+v[i-1]+d[i-3]));
    }
    if(d[n]>sol)
        sol=d[n];
    d[0]=0;
    d[1]=v[1]+v[n];
    d[2]=maxim(d[1], v[2]+v[1]);
    for(i=3; i<=n-2; i++){
        d[i]=maxim(d[i-1], (v[i]+v[i-1]+d[i-3]));
    }
    if(d[n-2]>sol)
        sol=d[n-2];
    out<<sol;
    return 0;
}