Cod sursa(job #1899924)
| Utilizator | Data | 3 martie 2017 00:13:37 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.53 kb |
#include <cstdio>
using namespace std;
long long s, Max=-2000000000;
int n, i, x, p1, p2, p;
int main ()
{
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
scanf("%d%d", &n, &x);
s=x;
p=1;
for (i=2; i<=n; i++){
scanf("%d", &x);
if (s+x>=x)
s+=x;
else {
s=x;
p=i;
}
if (s>Max){
Max=s;
p1=p; p2=i;
}
}
printf("%lld %d %d", Max, p1, p2);
return 0;
}
