Pagini recente » Cod sursa (job #48390) | Cod sursa (job #1312708)
#include <fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int a[6000005];
int s[6000005];
int main()
{
int n,i,k,maax=-2000000000,stanga=0,stg=0,dreapta,sumf=0,sum=0,miin=0,x;
f>>n;
for(i=1;i<=n;i++)
{
f>>a[i];
s[i]=s[i-1]+a[i];
}
for(i=1;i<=n;i++)
{
x=s[i]-s[stg];
if(x>maax)
{
maax=x;
stanga=stg+1;
dreapta=i;
}
else
if(x==maax)
{
int drp=i,stp=stg+1;
if(stp<stanga)
{
stanga=stp;
dreapta=i;
}
else
if(stp==stanga && drp<dreapta)
dreapta=i;
}
if(miin>s[i])
{
miin=s[i];
stg=i;
}
}
/*for(i=stanga;i<=dreapta;i++)
{
a[i]=a[i]*(-1);
sum+=a[i];
}
for(i=dreapta+1;i<=n;i++)
sumf+=a[i];
for(i=1;i<=stanga-1;i++)
sumf+=a[i];
g<<stanga<<" "<<dreapta<<"\n"<<sumf+sum;*/
g<<maax<<" "<<stanga<<" "<<dreapta;
return 0;
}