Cod sursa(job #1899725)
| Utilizator | Data | 2 martie 2017 21:48:33 | |
|---|---|---|---|
| Problema | Subsecventa de suma maxima | Scor | 70 |
| Compilator | cpp | Status | done |
| Runda | Arhiva educationala | Marime | 0.39 kb |
#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
ll n,sum,best,a,st,dr;
int A[6000010];
int main(){
ifstream cin ("ssm.in");
ofstream cout ("ssm.out");
cin>>n; st=dr=1;
for (int i=1; i<=n; i++){
cin>>a;
if (sum<0){
st=dr=i;
sum=a;
}
else if (sum+a>best){
best=sum+a;
sum+=a;
dr=i;
}
else sum+=a;
}
cout<<best<<" "<<st<<" "<<dr;
return 0;
}
