Cod sursa(job #495761)
| Utilizator | Data | 26 octombrie 2010 20:18:05 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 80 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.54 kb |
#include<stdio.h>
int main(){
freopen ("ssm.in", "r", stdin);
freopen ("ssm.out", "w", stdout);
int n, i, k, besta=0, bestb, bestc, nra=0, nrb, nrc;
scanf("%d ", &n);
besta=-99999;
nrb=1;
for(i=1; i<=n; i++){
scanf("%d ", &k);
if(nra+k>=k)
nra+=k;
else{
nra=k;
nrb=i;
}
nrc=i;
if(nra>besta){
besta=nra;
bestb=nrb;
bestc=nrc;
}
}
printf("%d %d %d ", besta, bestb, bestc);
return 0;
}
