Pagini recente » Cod sursa (job #2203927) | Cod sursa (job #1362052) | Cod sursa (job #2501930) | Cod sursa (job #2429018) | Cod sursa (job #1515772)
#include <cstdio>
#include <algorithm>
using namespace std;
const int MaxN = 6000002 ;
long long S[MaxN] , v[MaxN] ;
int main()
{
freopen ("ssm.in", "r", stdin);
freopen ("ssm.out","w",stdout );
long long i,indicemax,maxim,n;
scanf ("%lld", &n);
for(i=1; i<=n; i++) scanf ("%lld",&v[i]);
S[1]=v[1];
maxim=S[1];
indicemax=0;
for(i=1; i<=n ;i++)
{
S[i]=max(S[i-1]+v[i],v[i]);
if(maxim<S[i])
{
maxim=S[i];
indicemax=i;
}
}
i=indicemax;
while (S[i]>=0)
{
i--;
}
i++;
printf ("%lld %lld %lld", maxim, i,indicemax);
return 0;
}