Pagini recente » Cod sursa (job #1111687) | Cod sursa (job #2474379) | Cod sursa (job #76823) | Cod sursa (job #2773554) | Cod sursa (job #2931191)
#include <iostream>
#include <fstream>
#define MAX 400002
using namespace std;
int n,b[MAX],sgn,maxi,st,dr,ultim,s,x;
ifstream fin("buline.in");
ofstream fout("buline.out");
int main()
{
fin >> n;
for(int i = 1; i <= n; i++){
fin >> b[i] >> sgn;
if(sgn == 0){
b[i] = -b[i];
}
}
for(int i = n+1; i <= 2*n; i++){
b[i] = b[i-n];
}
n = 2*n;
for(int i = 1; i <= n; i++){
b[i] += b[i-1];
}
for(int i = 1; i <= n; i++){
for(int l = 1; l <= n/2; l++){
/// i, i+1, i+2, ..., i+l-1
int sum = b[i+l-1]-b[i-1];
if(sum > maxi){
maxi = sum;
st = i;
dr = l;
}
}
}
fout << maxi << " " << st << " " << dr;
return 0;
}