Pagini recente » Cod sursa (job #2121904) | Borderou de evaluare (job #119255) | Borderou de evaluare (job #1051351) | Borderou de evaluare (job #1493424) | Cod sursa (job #2985704)
#include <iostream>
#include <fstream>
#include <cstring>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int s[6000001];
int main()
{
int n,i,j,p,u,maxs;
fin>>n;
for (i=1;i<=n;i++) {
fin>>s[i];
s[i]+=s[i-1];
}
if (s[0]<=s[1]) {
i=0;
}
else {
i=1;
}
p=u=1;
maxs=s[1];
for (j=2;j<=n;j++) {
if (s[j]-s[i]>maxs) {
maxs=s[j]-s[i];
p=i+1;
u=j;
}
else if (s[j]==maxs) {
if (j-i<u-p+1) {
p=i+1;
u=j;
}
}
if (s[j]<s[i]) {
i=j;
}
}
fout<<maxs<<" "<<p<<" "<<u;
fin.close();
fout.close();
return 0;
}