Cod sursa(job #3262267)

Utilizator MilitaruMihaiMihaiMIlitaru MilitaruMihai Data 9 decembrie 2024 16:58:49
Problema Buline Scor 20
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.79 kb
#include <iostream>
#include <fstream>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int n,v[400005],t;
int main()
{
    fin>>n;
    for (int i=1;i<=n;i++)
    {
        fin>>v[i]>>t;
        if (t==0) v[i]=-v[i];
        v[i+n]=v[i];
    }
    int s=0,l=0,mx=0,mxp=0,mxl=0;
    for (int i=1;i<=2*n;i++)
    {
        //cout<<v[i]<<" ";
        s+=v[i];
        l++;
        if (l>n) {
            int p=i-l+1;
            s-=v[p];
            l--;
            p++;
            while (v[p]<0)
            {
                s-=v[p];
                p++;
            }
        }
        //cout<<s<<'\n';
        if (s>mx) mx=s,mxp=i,mxl=l;
        if (s<0) s=0,l=0;
    }
    fout<<mx<<" "<<mxp-mxl+1<<' '<<mxl;
    //2086
    return 0;
}