Pagini recente » Cod sursa (job #2588679) | Cod sursa (job #128185) | Cod sursa (job #3038991) | Cod sursa (job #2328776) | Cod sursa (job #2890686)
/*
Problema Subsecventa de suma maima
Platforma: Infoarena
*/
#include<bits/stdc++.h>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int main(){
int n,i,a,left,right;
long long ans = LONG_LONG_MIN,s=0;
vector<long long> sp,mp;
f>>n; //for starting from 1 index
sp.push_back(0);
mp.push_back(INT_MAX);
for(i=1;i<=n;++i){
f >> a;
s += a;
sp.push_back(s);
mp.push_back( min( mp[i-1], sp[i] ) );
}
left = 1;
int final_left;
for(i=1;i<=n;++i){
//g << i << ' ' << sp[i] << ' ' << mp[i-1]<<'\n';
if(i>2 && mp[i-1]!=mp[i-2]){
left = i;
}
long long val = sp[i] - mp[i-1];
if(val > ans){
ans = val;
right = i;
final_left = left;
}
}
g << ans << ' ' << final_left << ' ' << right;
return 0;
}