Pagini recente » Cod sursa (job #1335789) | Cod sursa (job #1390205) | Cod sursa (job #400321) | Cod sursa (job #835356) | Cod sursa (job #901334)
Cod sursa(job #901334)
#include <iostream>
#include <fstream>
using namespace std;
int a[6000000];
int main()
{
int i, st, dr, sum=0, n,stm,drm,summ;
ifstream fin ("ssm.in");
fin>>n;
for (i=1; i<=n;i++)
fin>>a[i];
fin.close();
st=dr=stm=drm=1;
sum=summ=a[1];
while(dr!=n)
{
if(sum<=0)
{st=dr=dr+1;
sum=a[st];
if(sum>summ||(sum==summ&&stm!=drm&&stm==st))
{
summ=sum;
stm=drm=st;
}
}
else
{
dr++;
sum+=a[dr];
if(sum>summ||(sum==summ&&(dr-st<drm-stm)&&stm==st))
{
summ=sum;
stm=st;
drm=dr;
}
}
}
ofstream fout("ssm.out");
fout<<summ<<" "<<stm<<" "<<drm<<"\n";
return 0;
}