Pagini recente » Cod sursa (job #81612) | Cod sursa (job #2960863) | Cod sursa (job #3137268) | Cod sursa (job #722235) | Cod sursa (job #2841362)
#include <vector>
#include <fstream>
#include <algorithm>
using namespace std;
int main()
{
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n;
fin >> n;
int a0;
fin >> a0;
int s_prec = a0;
int inceput_prec = 0;
int maxim = s_prec;
int incep_maxim = inceput_prec;
int sf_maxim = 0;
for (int i = 1; i < n; ++i) {
int ai;
fin >> ai;
int s_curr;
int inceput_curr;
if (/*ai > s_prec + ai*/ s_prec < 0) {
s_curr = ai;
inceput_curr = i;
}
else {
s_curr = s_prec + ai;
inceput_curr = inceput_prec;
}
if (s_curr > maxim) {
maxim = s_curr;
incep_maxim = inceput_curr;
sf_maxim = i;
}
s_prec = s_curr;
inceput_prec = inceput_curr;
}
fout << maxim << ' ' << incep_maxim + 1
<< ' ' << sf_maxim + 1 << endl;
return 0;
}