Pagini recente » Rating Trifan Antonia (panpan) | Cod sursa (job #2099976) | Rating Sarbu Mara (mara_sarbu) | Cod sursa (job #3226950) | Cod sursa (job #759827)
Cod sursa(job #759827)
#include <fstream>
using namespace std;
ifstream fin ("ssm.in");
ofstream fout ("ssm.out");
int main()
{
long n,i,smaxint,smax=-2147483648,iinc,imin,ifin,x=0,y=0,lng;
int check=0,check1=0;
long mini=2147483646;
fin>>n;
//a[0]=b[0]=0;
fin>>y;
//a[0]=y;
imin=2;
ifin=1;
mini=y;
iinc=1;
smax=y;
smaxint=y;
for (i=1;i<n;i++)
{
fin>>x;
// a[i]=x;
//z=y;
//z=y;
y=y+x;
if (y<mini)
{
check1=1;
mini=y;
imin=i+2;
}
else
{
smaxint=y-mini;
if (smaxint>smax)
{
iinc=imin;
check=1;
ifin=i+1;
smax=smaxint;
lng=ifin-iinc;
}
// else
// if(smaxint==smax)
// {
// if ( lng>i+1-imin )
// {
// iinc=imin;
// check=1;
// ifin=i+1;
// smax=smaxint;
// lng=ifin-iinc;
// }
// }
}
}
/*if ( check && check1)
fout<<smax<<" "<<imin<<" "<<ifin;
else
if (!check1)
if ( check )
fout<<smax<<" "<<1<<" "<<ifin;
else
fout<<smax<<" "<<1<<" "<<1;
else
fout<<smax<<" "<<1<<" "<<1;*/
if ( n )
{
fout<<smax<<" "<<iinc<<" "<<ifin;
}
else
fout<<0<<" "<<0<<" "<<0;
fin.close();
fout.close();
return 0;
}