Cod sursa(job #1520515)

Utilizator LeVladzCiuperceanu Vlad LeVladz Data 8 noiembrie 2015 21:51:49
Problema Buline Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.74 kb
#include <fstream>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int n,i,a[400005],x,pmaxim,umaxim,maxim,s,p;
int main()
{
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>a[i]>>x;
        if(x==0)
        {
            a[i]=-a[i];
        }
    }
    for(i=n+1;i<=2*n;i++)
    {
        a[i]=a[i%n];
    }
    p=1;maxim=-2000000000;
    for(i=1;i<=2*n;i++)
    {
        if(s+a[i]>=a[i])
        {
            s+=a[i];
        }
        else
        {
            s=a[i];
            p=i;
        }
        if(s>maxim)
        {
            maxim=s;
            pmaxim=p;
            umaxim=i;
        }
    }
    fout<<maxim<<" "<<pmaxim<<" "<<umaxim-pmaxim+1;
    return 0;
}