Pagini recente » Cod sursa (job #2938637) | Cod sursa (job #820235) | Cod sursa (job #1697756) | Cod sursa (job #1045199) | Cod sursa (job #3184128)
#include <fstream>
using namespace std;
int n;
int v[6000005];
int dp[6000005];
int start[6000005];
ifstream f("ssm.in");
ofstream g("ssm.out");
int main() {
f >> n;
for (int i = 1; i <= n; i++) {
f >> v[i];
}
for (int i = 1; i <= n; i++) {
if (dp[i-1] < 0) {
dp[i] = v[i];
start[i] = i;
} else {
dp[i] = dp[i-1] + v[i];
start[i] = start[i-1];
}
}
int Max = 0;
int idx_max;
for (int i = 1; i <= n; i++) {
if (Max < dp[i]) {
Max = dp[i];
idx_max = i;
}
}
g << Max << " " << start[idx_max] << " " << idx_max;
}