Cod sursa(job #788705)
Utilizator | Test P round2 | Data | 15 septembrie 2012 17:11:38 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.58 kb |
#include <cstdio>
int p,p1,u,max,max1,n,x;
int main()
{
freopen("ssm.in","r",stdin);
freopen("ssm.out","w",stdout);
scanf("%d",&n);
scanf("%d",&x);
p=p1=u=1; max=max1=x;
for(int i=2;i<=n;i++)
{
scanf("%d",&x);
if(x>max1+x)
{
max1=x;
p1=i;
} else max1+=x;
if(max1>max)
{
p=p1;
u=i;
max=max1;
}
}
printf("%d %d %d\n",max,p,u);
return 0;
}