Pagini recente » Cod sursa (job #2363444) | Cod sursa (job #478316) | Cod sursa (job #948273) | Cod sursa (job #2957265) | Cod sursa (job #2378376)
#include <bits/stdc++.h>
using namespace std;
int main()
{
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n;
vector<int> v;
fin>>n;
for(int i = 0; i<n; i++) {
int x;
fin>>x;
v.push_back(x);
}
vector<int> dp(n);
vector<int> start(n);
dp[0]=v[0];
start[0]=0;
for(int i=1; i<n; i++) {
if(dp[i-1]>=0) {
dp[i] = dp[i-1]+v[i];
start[i]=start[i-1];
}
else {
dp[i]=v[i];
start[i]=i;
}
}
int sol = dp[0];
int pos = 0;
for(int i = 1; i<n; i++) {
if(dp[i]>sol) {
sol = dp[i];
pos = i;
}
}
fout<<sol<<" "<<start[pos]+1<<" "<<pos+1<<endl;
return 0;
}