Pagini recente » Cod sursa (job #2770280) | Borderou de evaluare (job #3255280) | Cod sursa (job #3254689) | Cod sursa (job #1632954) | Cod sursa (job #2451534)
#include <stdio.h>
#include <stdlib.h>
int v[6000000];
int main() {
FILE *fin = fopen( "ssm.in", "r" ), *fout = fopen( "ssm.out", "w" );
int n, i, j, i2, i3, s;
long long max;
fscanf( fin, "%d", &n );
for ( i = 0; i < n; i ++ ) {
fscanf( fin, "%d", &v[i] );
}
max = -1000000000000;
s = 0;
i2 = 0;
for ( i = 0; i < n; i ++ ) {
if ( s < 0 ) {
s = 0;
i2 = i;
}
s += v[i];
if ( s > max ) {
max = s;
i3 = i2;
j = i;
}
}
fprintf( fout, "%lld %d %d", max, i3 + 1, j + 1 );
fclose( fin );
fclose( fout );
return 0;
}