洛谷 P1060 开心的金明 (01背包

P1060 开心的金明

裸的01背包 , 给的钱数为背包的容量 价值为物品价值*好感度 重量为物品的价格

#include <bits/stdc++.h>

using namespace std;

const int MAXN = 2e5+10;
int w[MAXN], v[MAXN];
int dp[MAXN];
int main(int argc, char const *argv[])
{
    int n, m;
    cin >> n >> m;
    for(int i = 1; i <= m; i++) {
        cin >> w[i] >> v[i];
        v[i] *= w[i];
    }
    for(int i = 1; i <= m; i++) {
        for(int j = n; j >= w[i]; j--) {
            dp[j] = max(dp[j], dp[j-w[i]]+v[i]);
        }
    }
    cout << dp[n] << endl;
    return 0;
}

猜你喜欢

转载自blog.csdn.net/wang2332/article/details/80633928