Cod sursa(job #2041488)
Utilizator | Data | 17 octombrie 2017 13:49:48 | |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.69 kb |
#include <bits/stdc++.h>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int main(){
int sum = 0, start, max = -1000000000, i, n, nr, maxi, maxj;
cin >> n;
for (i=1; i<=n; i++){
cin >> nr;
if (sum + nr > nr){
if (sum+nr > max){
max = sum+nr;
maxi = start;
maxj = i;
}
sum += nr;
}
else{
if(sum > max){
max = sum;
maxi = start;
maxj = i-1;
}
sum = nr;
start = i;
}
}
cout << max << ' ' << maxi << ' ' << maxj;
}