Cod sursa(job #1121374)

Utilizator vladttturcuman vlad vladtt Data 25 februarie 2014 12:41:23
Problema Buline Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int  n,i,ll,l,ii;
int maxx,qw;
int a[200001],s[400001],t;
int summ(short int a)
{
    int maxx=0,i;
    for(i=a;i<=n+a-1;i++)
    {
        if(s[i]-s[a-1]>maxx)
        {
            maxx=s[i]-s[a-1];
            ll=i-a+1;
        }
    }
    return maxx;
}
int main()
{
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>a[i]>>t;
        if(t==0)
            a[i]-=2*a[i];
        s[i]=s[i-1]+a[i];
    }
    for(i=n+1;i<=2*n-1;i++)
    {
        a[i]=a[i-n];
        s[i]=s[i-n]+s[n];
    }
    for(i=1;i<=n;i++)
    {
        qw=summ(i);
        if(qw>maxx)
        {
            maxx=qw;
            l=ll;
            ii=i;
        }
    }
    fout<<maxx<<' '<<ii<<' '<<l;
    return 0;
}