算法训练营第44天|完全背包 LeetCode 518.零钱兑换Ⅱ 337.组合总和Ⅱ

server/2024/10/18 10:14:57/

完全背包

题目链接:

完全背包


代码:

#include<iostream>
#include<vector>
using namespace std;void test(vector<int>weight,vector<int>value,int bagweight){vector<int>dp(bagweight+1,0);for(int i=0;i<weight.size();i++){for(int j=0;j<=bagweight;j++){if(j>=weight[i])dp[j] = max(dp[j],dp[j-weight[i]]+value[i]);}}cout<<dp[bagweight]<<endl;
}
int main(){int N,V;cin>>N>>V;vector<int>weight;vector<int>value;for(int i=0;i<N;i++){int w;int v;cin>>w>>v;weight.push_back(w);value.push_back(v);}test(weight,value,V);return 0;
}

LeetCode 518.零钱兑换Ⅱ

题目链接:

LeetCode 518.零钱兑换Ⅱ

代码:

class Solution {
public:int change(int amount, vector<int>& coins) {vector<int>dp(amount+1,0);dp[0]=1;for(int i=0;i<coins.size();i++){for(int j=coins[i];j<=amount;j++){dp[j] += dp[j-coins[i]];}}return dp[amount];}
};

LeetCode 337.组合总和Ⅱ

题目链接:

LeetCode 337.组合总和Ⅱ

代码:

class Solution {
public:int combinationSum4(vector<int>& nums, int target) {vector<int>dp(target+1,0);dp[0]=1;for(int i=0;i<=target;i++){for(int j = 0;j<nums.size();j++){if(i>=nums[j] && dp[i] < INT_MAX - dp[i - nums[j]]){dp[i]+=dp[i-nums[j]];}}}return dp[target];}
};


http://www.ppmy.cn/server/7498.html

相关文章

微信小程序实现预约生成二维码

业务需求&#xff1a;点击预约按钮即可生成二维码凭码入校参观~ 一.创建页面 如下是博主自己写的wxml&#xff1a; <swiper indicator-dots indicator-color"white" indicator-active-color"blue" autoplay interval"2000" circular > &…

tcp网络编程(基础)

目录 一.编程前的一些基础 二.tcp网络编程 1.一个服务器只能有一个客户端连接&#xff08;下面代码&#xff09; Socket.hpp TcpServer.hpp TcpServerMain.cc TcpClientMain.cc 2.一个服务器可以有多个客户端连接&#xff08;多线程&#xff09; 看这篇文章前&#xff0c…

03-JAVA设计模式-中介者模式

中介者模式 什么是中介者模式 中介者模式&#xff08;Mediator Pattern&#xff09;是一种行为设计模式&#xff0c;用于减少对象之间的直接依赖关系&#xff0c;降低它们之间的耦合度&#xff0c;并使得一个对象改变时&#xff0c;所有依赖于它的对象都得到通知并自动更新。…

初识ansible服务剧本playbook及剧本编写实例

目录 1、playbook剧本文件概念 1.1 剧本文件的结构由4部分组成 2、配置实例 实例1-编写一个实现批量安装mariadb数据库的剧本 实例2-编写一个创建一个目录/backup,并在目录喜爱创建01.txt文件的剧本 实例3-编写一个添加定时同步时间的定时任务剧本 错误反思 1、playbook剧…

[渗透测试学习] TwoMillion-HackTheBox

TwoMillion-HackTheBox 信息搜集 nmap扫描一下 nmap -sV -v 10.10.11.221扫描结果 PORT STATE SERVICE VERSION 22/tcp open ssh OpenSSH 8.9p1 Ubuntu 3ubuntu0.1 (Ubuntu Linux; protocol 2.0) 80/tcp open http nginx 3851/tcp f…

笔记强训 || NC313 两个数组的交集 || 哈希表/去重+排序+遍历查找+插入ret

题目解析 两个不同整数数组&#xff0c;其中两个数组均是无序且有多个重复项。找到两个数组中的公共元素并返回。此时&#xff0c;需要注意&#xff0c;返回值中并没有重复项&#xff0c;也就是如果数据均一致&#xff0c;返回一个数字即可。 算法原理 思路 就是将一个数组…

使用 Flask 和 MongoDB 构建用户注册系统

在本篇技术博客中&#xff0c;我们将学习如何使用 Flask 和 MongoDB 构建一个简单的用户注册系统。我们的目标是创建一个应用程序&#xff0c;允许用户通过表单提交注册信息&#xff0c;并将这些信息存储在 MongoDB 数据库中。 1. 安装必要的库 首先&#xff0c;确保您已经安…

Electron桌面应用开发:从入门到发布全流程解析

Electron是一个开源的桌面应用程序开发框架&#xff0c;它允许开发者使用Web技术&#xff08;HTML、CSS和JavaScript&#xff09;来创建跨平台的桌面应用程序。在本文中&#xff0c;我们将深入探讨Electron桌面应用程序开发的全流程&#xff0c;从入门到发布。 安装和配置Elec…