Pagini recente » Cod sursa (job #1098235) | Clasament sim | Cod sursa (job #1794262) | Cod sursa (job #2461633) | Cod sursa (job #1144069)
#include<fstream>
using namespace std;
int n, i, x[400002], maxim, pmaxim, lmaxim, p, u, L, isol, sol,sum, semn;
ifstream in("buline.in");
ofstream out("buline.out");
int main(){
in>>n;
for(i=1; i<=n; i++){
in>>x[i]>>semn;
if(semn==0)
x[i]=-x[i];
x[i+n]=x[i];
}
p=1;
isol=1;
sol=x[i];
sum=x[i];
L=1;
for(i=2; i<=2*n && i<p+n; i++){
if(x[i]+sum<x[i]){
sum=x[i];
p=i;
}
else{
sum+=x[i];
}
if(sum>sol){
sol=sum;
isol=p;
L=i-p+1;
}
if(i==p+n-1){
sum-=x[p];
p++;
}
}
out<<sol<<" "<<isol<<" "<<L;
return 0;
}