Cod sursa(job #1642376)

Utilizator KOzarmOvidiu Badea KOzarm Data 9 martie 2016 13:47:36
Problema Buline Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.86 kb
#include <fstream>

using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int x,ma,s,n,poz,l,i,pi;
long long a[200005];
bool semn;
int main()
{
    fin>>n;
    poz=1;
    fin>>x>>semn;
    if(semn==0)
        x*=(-1);
    a[1]=x;
    s=x;
    ma=s;
    poz=1;
    pi=1;
    l=1;
    for(i=2;i<=n;i++)
    {
        fin>>x>>semn;
        if(semn==0)
            x*=(-1);
        a[i]=x;
        if(s+x>x)
            s+=x;
        else
        {
            s=x;
            pi=i;
        }
        if(s>ma)
        {
            ma=s;
            poz=pi;
            l=i-pi+1;
        }
    }
    for(i=1;i<pi&&s+a[i]>a[i];i++)
    {
        s+=a[i];
        if(s>ma)
        {
            ma=s;
            poz=pi;
            l=i-pi+1+n;
        }
    }
    fout<<ma<<" "<<poz<<" "<<l;
    return 0;
}