Pagini recente » Cod sursa (job #1561296) | Cod sursa (job #2396353) | Cod sursa (job #1521089) | Cod sursa (job #245936) | Cod sursa (job #1134049)
#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,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;
}
for(i=1;i<=n;++i) {
c=i;
lp=1;
sp=0;
lp=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("%d %d %d",s,p,l);
return 0;
}