Cod sursa(job #339903)
Utilizator | Cristina Petrovici judy_k | Data | 12 august 2009 03:20:07 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 65 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.57 kb |
#include <stdio.h>
#define nmax 6000000
int a[nmax], n, min, max, pozmin, pozmax, i;
int main() {
freopen ("ssm.in", "r", stdin);
freopen ("ssm.out", "w", stdout);
scanf ("%d", &n);
for (i = 1; i <= n; ++i)
scanf ("%d", &a[i]);
pozmin=0;
min=0;
for (i = 1; i <= n; ++i) {
a[i] += a[i-1];
if ((a[i] - min) > max ) {
max = a[i] - min;
pozmax = i;
}
if (a[i] < min) {
min = a[i];
pozmin = i;
}
}
printf ("%d %d %d", max, pozmin + 1, pozmax);
return 0;
}