Cod sursa(job #2098829)

Utilizator LauraNaduLaura Nadu LauraNadu Data 3 ianuarie 2018 16:19:56
Problema Buline Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.92 kb
#include<fstream>
using namespace std;
ifstream f("buline.in");
ofstream g("buline.out");
int n, x, maxim, i, s1, s2, pmax, lmax, p, smax, minim, semn, lmin, umin;
int main()
{
    f>>n;
    maxim=-2000000000;
    p=1;
    for(i=1;i<=n;i++)
    {
        f>>x>>semn;
        if(semn==0)
            x*=-1;
        smax+=x;
        if(x+s1>=x)
            s1+=x;
        else
        {
            s1=x;
            p=i;
        }
        if(s1>maxim)
        {
            maxim=s1;
            pmax=p;
            lmax=i-p+1;
        }
        if(x+s2<=x)
            s2=x+s2;
        else
        {
            s2=x;
            p=i;
        }
        if(s2<minim)
        {
            minim=s2;
            umin=i;
            lmin=n-umin+p-1;
        }
    }
    if(maxim>smax-minim)
        g<<maxim<<" "<<pmax<<" "<<lmax;
    else g<<smax-minim<<" "<<umin+1<<" "<<lmin;
    return 0;
}