leetcode打卡#day45 携带研究材料(第七期模拟笔试)、518. 零钱兑换 II、377. 组合总和 Ⅳ、爬楼梯(第八期模拟笔试)

携带研究材料(第七期模拟笔试)

#include<iostream>
#include<algorithm>
#include<vector>

using namespace std;

int main() {
    int N, V;
    cin >> N >> V;
    vector<int> weights(N+1);
    vector<int> values(V+1);
    int w, v;
    
    for (int i = 0; i < N; i++) {
        cin >> w >> v;
        weights.push_back(w);
        values.push_back(v);
    }
    
    vector<int> pd(N+1, 0);
    
    //先遍历背包容量
    for (int i = 0; i < V; i++) {
        //再遍历物品
        for (int j = 0; j < N; j ++) {
            if (i - weights[j] >= 0) pd[i] = max(pd[i], pd[i-weights[j]] + values[j]);
        }
    }
    cout << pd[V];
    return 0;
    
}

518. 零钱兑换 II

//不包含顺序
class Solution {
public:
    int change(int amount, vector<int>& coins) {
        int n = coins.size();
        //凑成amount的组合数
        vector<int> pd(amount + 1, 0);
        pd[0] = 1;
        //先遍历物品
        for (int i = 0; i < n; i++) {
            //再遍历容量
            for (int j = coins[i]; j <= amount; j++) {
                pd[j] += pd[j - coins[i]];
            }
        }
        return pd[amount];
    }
};

377. 组合总和 Ⅳ

//包含顺序
class Solution {
public:
    int combinationSum4(vector<int>& nums, int target) {
        //目标为i的组合数
        vector<int> dp(target+1, 0);
        int n = nums.size();
        dp[0] = 1;
        //先容量再物体 -- 排序数
        for (int i = 0; i <= target; i++) {
            //遍历背包
            for (int j = 0; j < n; j++) {
                if (i - nums[j] >= 0 && dp[i] < INT_MAX - dp[i - nums[j]]) dp[i] += dp[i - nums[j]];
            }
        }
        return dp[target];
    }
};

爬楼梯(第八期模拟笔试)

#include<iostream>
#include<algorithm>
#include<vector>

using namespace std;

int main() {
    int m, n;
    cin >> n >> m;
    vector<int> dp(n+1, 0);
    dp[0] = 1;
    //包含顺序,排序:先容量再物品
    for (int i = 0; i <= n; i++) {
        for (int j = 1; j <= m; j++) {
            if (i - j >= 0) dp[i] += dp[i - j];
        }
    }
    cout << dp[n] << endl;
    return 0;
}

最近更新

  1. TCP协议是安全的吗?

    2024-06-18 18:36:05       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-18 18:36:05       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-18 18:36:05       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-18 18:36:05       20 阅读

热门阅读

  1. MySQL触发器基本结构

    2024-06-18 18:36:05       7 阅读
  2. Hello, World

    2024-06-18 18:36:05       5 阅读
  3. C语言TC中有⼏个画矩形函数?怎么使⽤?

    2024-06-18 18:36:05       5 阅读
  4. 闲鱼商品详情API:深入解析与应用指南

    2024-06-18 18:36:05       4 阅读
  5. Gradle相关概念

    2024-06-18 18:36:05       4 阅读
  6. Redis 键(key)

    2024-06-18 18:36:05       6 阅读
  7. .net core使用EPPlus设置Excel的页眉和页脚

    2024-06-18 18:36:05       6 阅读
  8. SqlServer添加索引

    2024-06-18 18:36:05       5 阅读
  9. cephfs的形式使用ceph,大致思路

    2024-06-18 18:36:05       7 阅读