Cod sursa(job #1642572)

Utilizator KOzarmOvidiu Badea KOzarm Data 9 martie 2016 14:57:49
Problema Buline Scor 80
Compilator cpp Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <fstream>

using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int n,x,pi,pj,pozmi,pozma,lmi,lma,i;
long long sma,smi,sum,ma,mi;
bool semn;
int main()
{
    fin>>n;
    fin>>x>>semn;
    if(semn==0)
        x*=(-1);
    sum+=x;
    sma=x;
    smi=x;
    ma=x;
    mi=x;
    pi=1;pj=1;lmi=1;lma=1;pozmi=1;pozma=1;
    for(i=2;i<=n;i++)
    {
        fin>>x>>semn;
        if(semn==0)
            x*=(-1);
        sum+=x;
        if(sma+x>x)
            sma+=x;
        else
        {
            sma=x;
            pi=i;
        }
        if(smi+x<x)
            smi+=x;
        else
        {
            smi=x;
            pj=i;
        }
        if(smi<mi)
        {
            mi=smi;
            pozmi=pj;
            lmi=i-pj;
        }
        if(sma>ma)
        {
            ma=sma;
            pozma=pi;
            lma=i-pi;
        }
    }
    if(ma>=sum-mi)
        fout<<ma<<" "<<pozma<<" "<<lma;
    else
        fout<<sum-mi<<" "<<pozmi+lmi+1<<" "<<n-lmi-1;
    return 0;
}