Pagini recente » Cod sursa (job #1303362) | Cod sursa (job #2894724) | Cod sursa (job #2510082) | Cod sursa (job #2685394) | Cod sursa (job #2689472)
#include <bits/stdc++.h>
using namespace std;
ifstream fin( "ssm.in" );
ofstream fout( "ssm.out" );
static inline long long max(long long a, long long b){
return a < b ? b : a;
}
int main() {
long long n, st, stsol, drsol, i, x, sum, maxx, maxnr, stnr, drnr;
fin >> n;
sum = maxx = 0;
maxnr = -(1LL << 32);
for( i = 0; i < n; ++i ){
fin >> x;
if( maxnr < x ){
maxnr = x;
stnr = drnr = i + 1;
}
sum += x;
if( sum < 0 ){
st = i + 1;
sum = 0;
}
if( maxx < sum ){
maxx = sum;
stsol = st + 1;
drsol = i + 1;
}
maxx = max(maxx, sum);
}
if( maxnr < 0 )
fout << maxnr << " " << stnr << " " << drnr;
else
fout << maxx << " " << stsol << " " << drsol;
return 0;
}