Cod sursa(job #2390876)

Utilizator georgipGeorgiana Petricele georgip Data 28 martie 2019 13:51:04
Problema Buline Scor 0
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 1.06 kb
#include <fstream>
#include <climits>

using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");

int v[200002],b[200002];
int main()
{
    int n,i,j,x,y,spar=0,smax=INT_MIN,li=1,lf=1,pozpar=1,z=0,w=0,lun=1;
    fin>>n;
    for(i=1;i<=n;i++)
    {
        fin>>x>>y;
        v[++z]=x;
        b[++w]=y;
    }
    for(i=1;i<=n;i++)
            {
                v[++z]=v[i];
                b[++w]=b[i];
            }
    for(i=1;i<=z;i++)
       {
            if(spar<0)
            {
                if(b[i]==1)
                    spar=v[i];
                else
                    spar=-v[i];
                pozpar=i;
            }
            else
            {
                if(b[i]==1)
                    spar+=v[i];
                else
                    spar-=v[i];
            }
            if(spar>smax&&i-pozpar+1<=n)
            {
                smax=spar;
                li=pozpar;
                lun=i-pozpar+1;
            }
       }
       fout<<smax<<" "<<li<<" "<<lun;
    return 0;
}