背包问题
来源:互联网 发布:很有节奏感的网络歌曲 编辑:程序博客网 时间:2024/06/03 20:10
hihocoder 1038. 01 背包
dp[i] 表示使用掉 i 张奖券(消耗掉 i 的空间)后,能获得的最大价值。
代码:
#include <iostream>#include <vector>#include <cmath>using namespace std;int main() { // Input int n, m; cin >> n >> m; vector<int> needs, values; while (n -- != 0) { int need, value; cin >> need >> value; needs.push_back(need); values.push_back(value); } // DP // Initialization vector<int> dp(m + 1, 0); // Start for (size_t i = 0; i < needs.size(); ++ i) for (int j = m; j >= needs[i]; -- j) dp[j] = max(dp[j], dp[j - needs[i]] + values[i]); cout << dp[m] << endl;}
hihocoder 1043. 完全背包
#include <iostream>#include <vector>using namespace std;int main() { int N, M; cin >> N >> M; vector<int> need(N), value(N); vector<int> dp(M + 1, 0); for (int i = 0; i < N; ++ i) cin >> need[i] >> value[i]; for (int i = 0; i < N; ++ i) for (int j = need[i]; j <= M; ++ j) dp[j] = max(dp[j], dp[j - need[i]] + value[i]); cout << dp[M] << endl;}
0 0
- 【无限背包】背包问题
- 背包问题---01背包
- 背包问题--部分背包
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 背包问题
- 所想即所得的linux用起来果然爽------比如用linux命令过滤
- nyoj 255 c小加之随机数
- python入门基础60讲
- leetcode96. Unique Binary Search Trees
- java GC 笔记图
- 背包问题
- JBoss Cache:企业级Java事务缓存集群系统
- SpringMVC+Jasperreports出现的java.lang.NoSuchMethodError问题
- 46508653
- 一个不会写Python的前端学习者对Python的看法。
- java的包和命名空间有什么区别?
- Office For Mac 中的 Excel 表格怎样换行
- 欢迎使用CSDN-markdown编辑器
- 重定位和链接