Pagini recente » Cod sursa (job #1523887) | Cod sursa (job #182475) | Cod sursa (job #1731610) | Cod sursa (job #1249834) | Cod sursa (job #2890637)
/*
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 = INT_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] ) );
}
for(i=1;i<=n;++i){
if(i>1 && mp[i-1]!=mp[i-2]){
left = i-1;
}
if(sp[i]-mp[i-1]> ans){
ans = sp[i] - mp[i-1];
right = i;
}
}
g << ans << ' ';
/*
for(i = right; i > 0; --i){
if(ans>0){
ans -= v[i];
}
if(ans == 0){
left = i;
break;
}
}
*/
g << left << ' ' << right;
return 0;
}