Pagini recente » Cod sursa (job #2831032) | Cod sursa (job #2264423) | Cod sursa (job #2100894) | Monitorul de evaluare | Cod sursa (job #3350759)
#include <iostream>
#include <fstream>
#include <cmath>
#define NMAX 6000001
using namespace std;
//ifstream fin("ssm.in");
//ofstream fout("ssm.out");
int n,mx,j,ed;
int a[NMAX],s[NMAX];
int main()
{
cin>>n;
for(int i=1;i<=n;i++)
cin>>a[i];
s[1]=a[1];
for(int i=2;i<=n;i++){
s[i]=max(s[i-1]+a[i],a[i]);
if(s[i]>mx){mx=s[i];ed=i;}
}
int m=0;
while(s[ed]!=0){
s[ed]-=a[ed-m];
m++;
j=ed-m+1;
}
cout<<mx<<" "<<j<<" "<<ed;
return 0;
}