Cod sursa(job #2122767)

Utilizator Victor_IonescuVictor Ionescu Victor_Ionescu Data 5 februarie 2018 14:28:19
Problema Buline Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.89 kb
#include <iostream>
#include <fstream>
#include <climits>
using namespace std;

int v[200002];

int main()
{
    int n,j,b,c,i,l=0,li=1,lf=1,sumopt=INT_MIN,sumint=0,pozint=1,contor=0;
    ifstream f("buline.in");
    ofstream g("buline.out");
    f>>n;
    for(i=1;i<=n;i++)
    {
      f>>b>>c;
      if(c==0)
        v[++l]=-b;
      else
        v[++l]=b;
    }
    /*for(i=1;i<=l;i++)
      cout<<v[i]<<" ";*/
      i=1;
    while(i<=n)
    {
      if(i==li&&li!=1&&sumint>0)///&&sumopt>sumint)
        break;
      if(sumint<0)
        li=lf=i,sumint=v[i],contor=1;
      else
      {
        sumint+=v[i];
        contor++;
        pozint=i;
        if(sumint>sumopt)
          sumopt=sumint,lf=i;
      }
      if(i==n&&li!=1)
        i=1;
      else
        i++;
    }
    g<<sumopt<<" "<<li<<" "<<contor-1;
    f.close();
    g.close();
    return 0;
}