Pagini recente » Cod sursa (job #582144) | Cod sursa (job #158819) | Cod sursa (job #265436) | Cod sursa (job #462212) | Cod sursa (job #2368957)
#include <iostream>
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int N,v[6000005],dp[6000005];
int SSM,start,stop,best_s=-int(2e9),S=0;
int main()
{
f>>N;
for(int i=1; i<=N; i++)
{
f>>v[i];
dp[i]=max(dp[i-1]+v[i],v[i]);
best_s=max(best_s,dp[i]);
}
for(int i=1; i<=N; i++)
{
if(S>=0)
{
S+=v[i];
if(S==best_s)
{
SSM=best_s;
stop=i;
}
}
else
{
start=v[i];
S=v[i];
}
}
g<<SSM<<" "<<start<<" "<<stop;
}