Pagini recente » Cod sursa (job #2579917) | Cod sursa (job #1331606) | Cod sursa (job #1665065) | Cod sursa (job #2648341) | Cod sursa (job #1263283)
#include <cstdio>
using namespace std;
#define DIM 400002
FILE *fin = fopen("buline.in","r");
FILE *fout = fopen("buline.out","w");
int i, n, nr, tip, v[DIM], sum, bst, ip, jp;
int main() {
fscanf(fin, "%d", &n);
for(i = 1;i <= n;i++) {
fscanf(fin, "%d %d", &nr, &tip);
if(tip == 0) {
tip--;
}
v[i] = v[i + n] = tip * nr;
}
sum = bst = 0;
ip = jp = 0;
for(i = 1;i <= n + n;i++) {
if(sum < 0) {
sum = 0;
ip = i;
}
sum += v[i];
if(sum > bst) {
if(i - ip < n) {
bst = sum;
jp = i;
}
}
}
fprintf(fout, "%d %d %d\n", bst, ip, jp - ip + 1);
fclose(fin);
fclose(fout);
return 0;
}