Pagini recente » Istoria paginii utilizator/popafelicia | Monitorul de evaluare | Monitorul de evaluare | Diferente pentru probleme-de-taietura intre reviziile 96 si 66 | Cod sursa (job #404766)
Cod sursa(job #404766)
#include<fstream>
using namespace std;
ifstream f("ssm.in");
ofstream g("ssm.out");
int n,i1(1),i,imax(1),imis(1),i2;
long long s,a,smax;
int main()
{
f>>n;
f>>a;
s=a;
smax=s;
for(i=2;i<=n;i++)
{
f>>a;
if((s+a)>=a)
{
s=s+a;i2=i;
}
else
{
s=a;
i1=i;i2=i;
}
if((smax<s)&&((i2-i1)<(imis-imax)))
{
imis=i2;
imax=i1;
smax=s;
}
else
if(smax<s)
{
smax=s;
imax=i1;
imis=i2;
}
} if((s==smax)&&((i2-i1)<(imis-imax)))
{
imis=i2;
imax=i1;
}
g<<smax<<' '<<imax<<' '<<imis;
return 0;
}