解题思路:背包
参考代码:
#include <stdio.h> #include <string.h> #include <algorithm> using namespace std; int v,n; int dp[20005]; int w[35]; int main(){ memset(w,0,sizeof(w)); memset(dp,0,sizeof(dp)); scanf("%d%d",&v,&n); for(int i=1;i<=n;i++){ scanf("%d",&w[i]); } for(int i=1;i<=n;i++){ for(int j=v;j>=w[i];j--){ dp[j]=max(dp[j],w[i]+dp[j-w[i]]); } } printf("%d",v-dp[v]); return 0; }
0.0分
17 人评分
上车人数 (C语言代码)浏览:1173 |
C语言训练-求具有abcd=(ab+cd)2性质的四位数 (C语言代码)浏览:1367 |
C二级辅导-统计字符 (C语言代码)浏览:533 |
输出九九乘法表 (C语言代码)浏览:555 |
输出正反三角形 (C语言代码)浏览:780 |
C语言程序设计教程(第三版)课后习题7.1 (C语言代码)浏览:1222 |
C语言程序设计教程(第三版)课后习题8.5 (C语言代码)浏览:567 |
回文数字 (C语言代码)浏览:2509 |
C语言程序设计教程(第三版)课后习题10.1 (C语言代码)浏览:560 |
数字游戏 (C++代码)浏览:1178 |