解题思路:
注意事项:
参考代码:
#include<stdio.h>
long h,n;
int a[501],s[45001];
int main()
{
long i,j,k;
scanf("%ld%ld",&h,&n);
for(i=1;i<=n;i++)
scanf("%d",&a[i]);
for(i=1;i<=h;i++)
if(i>=a[1])
s[i]=a[1];
for(i=2;i<=n;i++)
for(j=h;j>=a[i];j--)
if(s[j]<s[j-a[i]]+a[i])
s[j]=s[j-a[i]]+a[i];
printf("%d\n",s[h]);
return 0;
}
0.0分
2 人评分
上车人数 (C语言代码)浏览:1180 |
永远的丰碑 (C语言代码)浏览:656 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:663 |
Hello, world! (C语言代码)浏览:1202 |
C语言训练-求具有abcd=(ab+cd)2性质的四位数 (C语言代码)浏览:567 |
C语言程序设计教程(第三版)课后习题5.4 (C语言代码)浏览:1293 |
三角形 (C++代码)递归(存在大量重复计算,容易出现时间超限)浏览:781 |
IP判断 (C语言代码)浏览:764 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:529 |
DNA (C语言描述,蓝桥杯)浏览:1555 |