Pagini recente » Cod sursa (job #2706969) | Cod sursa (job #748371) | Cod sursa (job #579763) | Cod sursa (job #2688309) | Cod sursa (job #490423)
Cod sursa(job #490423)
#include <stdio.h>
#define DIM 200001
FILE *fi = fopen ("buline.in", "r");
FILE *fo = fopen ("buline.out", "w");
int N, A[200001], T;
int S, P, L;
int SM, SP, SL;
int main () {
fscanf (fi, "%d%d%d", &N, &A[1], &T);
if (T == 0) A[1] = -A[1];
SM = S = A[1];
for (int i=2; i<=N; ++i) {
fscanf (fi, "%d%d", &A[i], &T);
if (T == 0) A[i] = -A[i];
if (S < 0)
S = A[i], P = i, L = 1;
else
S += A[i], ++L;
if (S > SM)
SM = S, SP = P, SL = L;
}
for (int i=1; i<P; ++i) {
if (S < 0)
break;
else
S += A[i], ++L;
if (S > SM)
SM = S, SP = P, SL = L;
}
fprintf (fo, "%d %d %d", SM, SP, SL);
}