Pagini recente » Cod sursa (job #1839419) | Cod sursa (job #1324437) | Cod sursa (job #997737) | Cod sursa (job #2549301) | Cod sursa (job #1458126)
//subsecv de suma maxima
#include<bits/stdc++.h>
#define debug cerr<<"ok";
#define MAXN 6000000
using namespace std;
int n,i,j,a[MAXN],best[MAXN];
int main ()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%d",&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
int celMaiTheBest=-(int)1e4;
int s=0,e=0;
for(i=1;i<=n;i++){
if(a[i] > best[i-1]+a[i]){
s=i;
best[i]=a[i];
}
else
best[i]=best[i-1]+a[i];
if(best[i] > celMaiTheBest){
celMaiTheBest=best[i];
e=i;
}
}
printf("%d %d %d",celMaiTheBest,s,e);
return 0;
}