Cod sursa(job #1515737)
| Utilizator | Data | 2 noiembrie 2015 09:21:18 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 10 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
#include <cstdio>
using namespace std;
int v[105];
int main()
{
freopen("ssm.in", "r", stdin);
freopen("ssm.out", "w", stdout);
int n,sum=0, sf=0,x,i;
scanf("%d", &n);
for(i=1; i<=n; i++)
{
scanf("%d", &x);
if(v[i-1]+x < x) v[i]=x;
else v[i]=v[i-1]+x;
if(sum<v[i])
{
sum=v[i];
sf=i;
}
}
printf("%d ", sum);
i=sf;
while (v[i]>0 && i>=1)
{
i--;
}
printf("%d %d", i+1,sf);
return 0;
}
