Cod sursa(job #2290300)
Utilizator | Data | 26 noiembrie 2018 11:40:32 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 85 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva educationala | Marime | 0.34 kb |
#include <iostream>
#include <cstdio>
using namespace std;int main(){freopen("ssm.in","r",stdin);freopen("ssm.out","w",stdout);int n,a,sum,st,dr,smax,i,x,y;scanf("%d",&n);smax=-2147483648;sum=0;x=1;for(i=1;i<=n;i++){scanf("%d",&a);if(sum<0) {sum=a;x=y=i;}else{sum+=a;y=i;}if(sum>smax){smax=sum;st=x;dr=y;}}printf("%d %d %d\n",smax,st,dr);return 0;}