Pagini recente » Cod sursa (job #1605975) | Cod sursa (job #130328) | Cod sursa (job #2608168) | Cod sursa (job #2264348) | Cod sursa (job #3258133)
#include <fstream>
using namespace std;
ifstream cin("buline.in");
ofstream cout("buline.out");
int n,v[400002],lmax,stmax,smax=-1e9;
int main()
{
cin>>n;
int semn;
for(int i=1;i<=n;i++){
cin>>v[i]>>semn;
if(semn==0)
v[i+n]=v[i]=-v[i];
else
v[i+n]=v[i];
}
int l=1,s=0,st=0;
for(int i=1;i<2*n;i++){
if(l==n){
s-=v[st];
st++;
continue;
}
if(s<0){
s=v[i];
st=i;
l=1;
}else
{
s+=v[i];
l++;
}
if(s>smax){
smax=s;
stmax=st;
lmax=l;
}
}
cout<<smax<<' '<<stmax<<' '<<lmax;
return 0;
}