C++提高组 2月13日 签到OoO

TralSun 2023-02-13 20:28:50

题目一

#include<bits/stdc++.h>
using namespace std;
const int N=2050;
typedef long long ll;
int n, k, m, v[N], w[N];
int dp[10050][2];
int main(){
    cin >> n >> m >> k;
    for (int i = 1; i <= n; ++i) cin >> w[i] >> v[i];
    for (int i = 1; i <= n; ++i) {
        for (int j = m; j >= 0; --j) {
            if (w[i] <= j) dp[j][0] = max(dp[j][0], dp[j - w[i]][0] + v[i]), dp[j][1] = max(dp[j][1], dp[j - w[i]][1] + v[i]);
            if (w[i] + k <= j) dp[j][1] = max(dp[j][1], dp[j - w[i] - k][0] + v[i] * 2);
        }
    }
    cout << dp[m][1];
    return 0;
}
...全文
12 回复 打赏 收藏 转发到动态 举报
写回复
回复
切换为时间正序
请发表友善的回复…
发表回复
相关推荐

49,425

社区成员

发帖
与我相关
我的任务
社区描述
和众多高校算法内卷分子,一起学习和交流算法那。浓郁的算法交流氛围,拒绝躺平,有效内卷。加入我们,私信我拉你入核心内卷群。
算法数据结构leetcode 个人社区
社区管理员
  • 执 梗
  • Dream-Y.ocean
  • ღCauchyོꦿ࿐
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

 刷题!