Pagini recente » Cod sursa (job #595282) | Cod sursa (job #1670388) | Cod sursa (job #7523) | Cod sursa (job #2542460) | Cod sursa (job #1100452)
#include<fstream>
int v[6000005];
using namespace std;
int main()
{
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int n,min,bestSum,x;
fin>>n;
for(int i=1;i<=n;++i)
fin>>v[i];
if(n==1)
{
fout<<v[1]<<" 1 1";
return 0;
}
v[0]=0;
for(int i=1;i<=n;i++)
v[i]=v[i]+v[i-1];
min=v[0];
bestSum=-99999999;
int a=-99999999,b,mini;
for(int i=1;i<=n;i++)
{
x=v[i]-min;
if(min>v[i])
{
min=v[i];
mini=i;
}
if(bestSum<x || bestSum<x && a!=-99999999 && (i-mini)>(b-a))
{
bestSum=x;
a=mini;
b=i;
}
}
++a;
fout<<bestSum<<" "<<a<<" "<<b;
return 0;
}