Pagini recente » Cod sursa (job #155177) | Cod sursa (job #1284601) | Cod sursa (job #1690296) | Cod sursa (job #2890661)
/*
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
;
int ans = INT_MIN,s=0;
vector<int> 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 = 1;
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;
}
if(sp[i]-mp[i-1]> ans){
ans = sp[i] - mp[i-1];
right = i;
final_left = left;
}
}
g << ans << ' ' << final_left << ' ' << right;
return 0;
}