Pagini recente » Cod sursa (job #3268128) | Cod sursa (job #2749496) | Cod sursa (job #1226143) | Cod sursa (job #2148578) | Cod sursa (job #3145126)
#include <fstream>
using namespace std;
ifstream cin("ssm.in");
ofstream cout("ssm.out");
int main(){
int length;
int v[length+2] = {0};
int dp[length+2] = {0};
int start = 1;
int end = 1;
cin >> length;
for (int i = 1; i <= length ; i++){
cin >> v[i];
}
long long max_sum = -100000000000000;
for (int i = 1; i <= length; i++){
dp[i] = max(dp[i-1] + v[i], v[i]);
if (dp[i] < 0){
start = i+1;
}
if (dp[i] >= max_sum){
if (dp[i] == (dp[i-1] + v[i])){
end = i;
} else {
start = i;
end = i;
}
max_sum = dp[i];
}
}
cout << max_sum << " " << start << " " << end;
}