Cod sursa(job #1630496)
| Utilizator | Data | 5 martie 2016 09:44:54 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 60 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.7 kb |
#include <cstdio>
using namespace std;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
long int n, a, s, smax, i, pozmax, pozmin;
scanf("%ld", &n);
scanf("%d", &a);
smax=a;
s=a;
pozmin=0;
pozmax=0;
for(i=1;i<n;i++)
{
scanf("%d", &a);
s=s+a;
if(s>0)
{
if(s>smax)
{
smax=s;
pozmax=i;
}
}
else
{
s=a;
pozmin=i;
}
}
printf("%d %d %d", smax, pozmin+1, pozmax+1);
return 0;
}
