Cod sursa(job #1143810)

Utilizator ovidiuz98Zamfir Ovidiu ovidiuz98 Data 16 martie 2014 01:08:25
Problema A+B Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.73 kb
#include <fstream>

using namespace std;
long long n,v[1002],i,maxim=0,suma=0,s=0,j;

int main()
{
    ifstream f("expresie.in");
    ofstream g("expresie.out");
    f>>n;
    for(i=1;i<=n;i++)
        {f>>v[i];s=s+v[i];}
    for(i=1;i<=n-2;i++)
    {
        if(s-v[i]-v[i+1]-v[i+2]+v[i]*v[i+1]*v[i+2]>suma) suma=s-v[i]-v[i+1]-v[i+2]+v[i]*v[i+1]*v[i+2],j=i;
    }
    for(i=1;i<=n-1;i++)
    {
        if(s-v[i]-v[i+1]+v[i]*v[i+1]>maxim) maxim=s-v[i]-v[i+1]+v[i]*v[i+1];
    }
    s=maxim;
    for(i=1;i<=n-1;i++)
    {
        if(i<j-1 || i>j+1)
        {
            if(s-v[i]-v[i+1]+v[i]*v[i+1]>suma) suma=s-v[i]-v[i+1]+v[i]*v[i+1];
        }
    }
    g<<max(s,suma);
    f.close();g.close();
    return 0;
}