Pagini recente » Cod sursa (job #1021170) | Cod sursa (job #1449332) | Cod sursa (job #582130) | Cod sursa (job #795306) | Cod sursa (job #2413299)
#include <fstream>
using namespace std;
ifstream f("buline.in");
ofstream g("buline.out");
long long n,i,x,val,poz,ii,iii,maxi,s, v[500000];
int main()
{
f>>n;
for (i=1; i<=n; i++) {
f>>v[i]>>val;
if (!val) v[i]=-v[i];
v[i+n]=v[i];
}
for (i=1; i<=2*n; i++) {
x=v[i];
if ( x > s+x){
poz=i;
s=0;
}
s += x;
if (i-poz == n){
s-=v[poz];
poz++;
}
if ( s > maxi ){
ii=poz;
maxi=s;
iii=i;
}
}
g<<maxi<<" "<<ii<<" "<<iii-ii+1;
return 0;
}