Cod sursa(job #363761)
Utilizator | Tanase Alexandru tase | Data | 14 noiembrie 2009 17:30:18 |
---|---|---|---|
Problema | Secventa 2 | Scor | 50 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include<cstdio>
int n,i,k,v[50004],p,u,smax=-30000,sum[50004],sc,pp;
int main()
{
freopen("secv2.in","r",stdin);
freopen("secv2.out","w",stdout);
scanf("%d%d",&n,&k);
for(i=1;i<=n;++i)
{
scanf("%d",&v[i]);
sum[i]=sum[i-1]+v[i];
}
p=1;
u=k;
sc=smax=sum[k];
for(i=k+1;i<=n;++i)
{
if(sc+v[i]>sum[i]-sum[i-k])
sc+=v[i];
else
{
sc=sum[i]-sum[i-k];
pp=i-k+1;
}
if(sc>smax)
{
smax=sc;
p=pp;
u=i;
}
}
printf("%d %d %d",p,u,smax);
return 0;
}