Pagini recente » Profil MihneaSuprem5000 | Borderou de evaluare (job #1253204) | Cod sursa (job #139568) | Cod sursa (job #2068386) | Cod sursa (job #1773754)
#include <stdio.h>
#define max(a, b)(a > b ? a : b)
int main() {
FILE *fin = fopen("ssm.in", "r"), *fout = fopen("ssm.out", "w");
int n, sc,scurent, smax = -999999999, elem, first, last, maxlast, lastc, firstc, maxfirst;
int i;
fscanf(fin, "%d", &n);
sc = 0;
for(i = 1;i <= n;i++) {
fscanf(fin, "%d", &elem);
scurent = max(elem, sc + elem);
first = firstc;
if(elem > sc+elem)
first = i;
if(scurent > smax) {
maxfirst = first;
maxlast = i;
smax = scurent;
}
sc = scurent;
firstc = first;
}
fprintf(fout, "%d %d %d", smax, maxfirst, maxlast);
fclose(fin);
fclose(fout);
return 0;
}