解题思路:
注意事项:
递推公式中注意还要和dp[j]本身作比较
参考代码:
a,b = map(int,input().split()) obj=[list(map(int,input().split()))for i in range(b)] dp = list(0 for i in range(a+1)) dp[0]=0 for i in range(b): for j in range(1,a+1): if j-obj[i][0] >=0 : dp[j]=max(dp[j-1],dp[j-obj[i][0]]+obj[i][1],dp[j]) print('max='+str(dp[-1]))
0.0分
1 人评分
剪刀石头布 (C语言代码)不知道怎么直接在scanf中用枚举变量浏览:1304 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:1419 |
C语言程序设计教程(第三版)课后习题8.6 (C语言代码)浏览:577 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:563 |
C二级辅导-阶乘数列 (C语言代码)浏览:688 |
WU-陶陶摘苹果2 (C++代码)浏览:968 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:522 |
C二级辅导-求偶数和 (C语言代码)浏览:671 |
格式化数据输出 (C语言代码)浏览:811 |
C语言程序设计教程(第三版)课后习题6.3 (C语言代码)浏览:467 |