Pagini recente » Cod sursa (job #1966850) | Rezultatele filtrării | Cod sursa (job #1691703) | Cod sursa (job #1984622) | Cod sursa (job #1820289)
#include <cstdio>
#include <algorithm>
#define lmax 6000005
int n,i,vmax,poz,val,ok,pinceput;
int ssm[lmax],v[lmax];
using namespace std;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%d",&n);
ssm[0]=ssm[1]=0;
scanf("%d",&v[1]);
ssm[1]=v[1];
vmax=v[1];
poz=1;
for(i=2;i<=n;i++)
{
scanf("%d",&v[i]);
ssm[i]=max(v[i],ssm[i-1]+v[i]);
if(ssm[i]>vmax)vmax=ssm[i],poz=i;
//printf("%d ",ssm[i]);
}
v[0]=0;
for(i=1;i<=poz;i++)
v[i]+=v[i-1];
val=v[poz];
ok=0;
for(i=1;i<=poz and ok==0;i++)
{
if(val-v[i-1]==vmax)ok++,pinceput=i;
}
printf("%d %d %d\n",vmax,pinceput,poz);
return 0;
}