Pagini recente » Cod sursa (job #1876046) | Cod sursa (job #1586607) | Cod sursa (job #1355255) | Cod sursa (job #1683105) | Cod sursa (job #3140802)
// --- --- --- --- - --- - - --- *-- *-- - - \\
// |_/ |_/ | | |-< | |-- |\/| |-| \ \ |\/| \\
// - - \ --- --- --- --- - - - - --* --* - - \\
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
typedef struct {
int sum;
int i;
int j;
} sol;
int sir[6000005] = {0};
int sp[6000005] = {0};
int main() {
int n;
fin >> n;
for (int i = 1; i <= n; i++) {
fin >> sir[i];
sp[i] = sp[i - 1] + sir[i];
}
int i_spmin = 0, new_sum = 0;
sol sol = {0, 0, 0};
for (int j = 1; j <= n; j++) {
new_sum = sp[j] - sp[i_spmin];
if (new_sum > sol.sum) {
sol.sum = new_sum;
sol.i = i_spmin + 1;
sol.j = j;
}
if (sp[j] < sp[i_spmin]) {
i_spmin = j;
}
}
fout << sol.sum << ' ' << sol.i << ' ' << sol.j;
return 0;
}