Cod sursa(job #3297400)
Utilizator | Data | 22 mai 2025 16:17:42 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.52 kb |
#include <stdio.h>
int main() {
FILE *fin = fopen( "ssm.in", "r" );
FILE *fout = fopen( "ssm.out", "w" );
int n;
fscanf( fin, "%d", &n );
int x = -1, ret = -1e9;
int xst;
int retst, retdr;
for( int i = 0; i < n; i++ ){
int a;
fscanf( fin, "%d", &a );
if( x < 0 ){
xst = i;
x = 0;
}
x += a;
if( x > ret ){
ret = x;
retst = xst;
retdr = i;
}
}
fprintf( fout, "%d %d %d\n", ret, 1 + retst, 1 + retdr );
fclose( fin );
fclose( fout );
return 0;
}