Pagini recente » Cod sursa (job #2755570) | Cod sursa (job #2528381) | Cod sursa (job #3262004) | Cod sursa (job #2359842) | Cod sursa (job #844502)
Cod sursa(job #844502)
#include<cstdio>
using namespace std;
int v[400010],n,i,a,b,s,begin,end,smax,inc;
int main()
{
freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
{
scanf("%d%d",&a,&b);
if(b==0) b=-1;
v[i]=a*b;
}
s=smax=-(1<<31-1);
for(i=1;i<=n;i++)
{
if(s<0) s=0,inc=i;
s+=v[i];
if(s>smax) {smax=s; begin=inc; end=i;}
}
for(i=1;i<inc;i++)
{
if(s<0) s=0,inc=n+i;
s+=v[i];
if(s>smax) {smax=s; begin=inc; end=n+i;}
}
printf("%d %d %d\n",smax,begin,end-begin+1);
return 0;
}