Pagini recente » Cod sursa (job #2149612) | Cod sursa (job #2848728) | Cod sursa (job #1130307) | Cod sursa (job #487828) | Cod sursa (job #1409421)
#include <cstdio>
#define sc scanf
#define pf printf
using namespace std;
int v[200010];
int main()
{
freopen("buline.in","r",stdin);
freopen("buline.out","w",stdout);
int n,i,j,len,st,sum=0,sol=-0x3f3f3f3f,nr,type;
bool flag=false;
sc("%d",&n);
for(i=1;i<=n;i++)
{
sc("%d",&nr);
sc("%d",&type);
if(!type)
nr*=-1;
v[i]=nr;
}
int p=1;
for(i=1;i<=n;i++)
{
if(sum<0)
{
if(flag)
{
if(sum>sol)
{
sol=sum;
st=p;
len=i-st+1;
}
break;
}
sum=v[i];
p=i;
}
else
sum+=v[i];
if(sum>sol)
{
sol=sum;
st=p;
if(!flag)
len=i-st+1;
else
len=i+n-st+1;
if(flag)
break;
}
if(i==n)
{
if(p==1)
break;
i=0;
flag=true;
}
}
printf("%d %d %d",sol,st,len);
return 0;
}