Estrella's Travel | ||
Accepted : 106 | Submit : 269 | |
Time Limit : 1000 MS | Memory Limit : 65536 KB |
#include<stdio.h>
int min(int a,int b)
{
if(a>b) return b;
else return a;
}
int main()
{
int a[1005],dp[1005],t,n,m,i,j;
while(~scanf("%d%d",&n,&m))
{
dp[0]=0;
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
for(i=1;i<=n;i++)
{
t=1e6;
if(i<=m)
{
for(j=0;j<i;j++)
t=min(t,dp[j]);
dp[i]=t+a[i];
}
else
{
for(j=i-m;j<i;j++)
t=min(t,dp[j]);
dp[i]=t+a[i];
}
}
printf("%d\n",dp[n]);
}
return 0;
}