Cod sursa(job #1134020)

Utilizator PaueyPaula Nicoleta Gradu Pauey Data 5 martie 2014 21:59:55
Problema Buline Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.71 kb
#include <cstdio>
using namespace std;
int v[400040];

int main()
{
    freopen("buline.in","r",stdin);
    freopen("buline.out","w",stdout);
    int n,p=1,lp=1,i,l=1,pp=1,c,semn,bul;
    long long s=-2000000000,sp=0;
    scanf("%d",&n);
    for(i=1;i<=n;++i) {
         scanf("%d%d",&bul,&semn);
         if(semn==0) v[i+n]=v[i]=-bul;
         else v[i+n]=v[i]=bul;
    }
    c=1;
    while(lp<n && c<2*n)
    {
       if(sp>0) {
            sp=sp+v[c];
            lp++;
       }
       else {
          sp=v[c];
          lp=1;
          pp=c;
       }
       if(sp>s) {
         s=sp;
         p=pp;
         l=lp;
       }
       ++c;
    }
    printf("%lld %d %d",s,p,l);
    return 0;
}