Pagini recente » Atasamentele paginii TPerm | Diferente pentru 12-ponturi-pentru-programatorii-cc intre reviziile 3 si 2 | Monitorul de evaluare | Diferente pentru problema/cutii intre reviziile 9 si 8 | Cod sursa (job #2636270)
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n, s[6000005], st, curr, best, stmax, drmax;
void citire() {
fin >> n;
for(int i = 1; i <= n; i++)
fin >> s[i];
}
void solve() {
for(int i = 1; i <= n; i++) {
curr += s[i];
if(curr < 0) {
curr = 0;
st = i+1;
}
if(curr > best) {
best = curr;
stmax = st;
drmax = i;
}
}
}
int main() {
citire();
solve();
fout << best << ' ' << stmax << ' ' << drmax;
}