37 条题解
-
0
#include <iostream> #include <algorithm> using namespace std; int main() { int N, m; cin >> N >> m; int v[25]; // 物品价格 int w[25]; // 物品重要度 int dp[30001] = {0}; // 动态规划数组,初始化为0 for (int i = 0; i < m; i++) { cin >> v[i] >> w[i]; } for (int i = 0; i < m; i++) { for (int j = N; j >= v[i]; j--) { dp[j] = max(dp[j], dp[j - v[i]] + v[i] * w[i]); } } cout << dp[N] << endl; return 0; }
信息
- ID
- 1
- 时间
- 1000ms
- 内存
- 128MiB
- 难度
- 1
- 标签
- 递交数
- 4607
- 已通过
- 1304
- 上传者