Cod sursa(job #1885430)
| Utilizator | Data | 19 februarie 2017 21:33:30 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 100 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.55 kb |
#include <stdio.h>
using namespace std;
int i,a[6000050],n,x,y,poz;
long long sc,smax;
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]);
sc=smax=a[1];
x=y=poz=1;
for(i=2; i<=n; i++)
{
sc+=a[i];
if(sc<a[i]){
sc=a[i];
poz=i;
}
if(sc>smax)
{smax=sc;
x=poz;y=i;}
}
printf("%lld %d %d\n",smax,x,y);
return 0;
}
