【算法-动态规划】零钱兑换 II-力扣 518
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
- 推荐:kuan 的首页,持续学习,不断总结,共同进步,活到老学到老
- 导航
- 檀越剑指大厂系列:全面总结 java 核心技术点,如集合,jvm,并发编程 redis,kafka,Spring,微服务,Netty 等
- 常用开发工具系列:罗列常用的开发工具,如 IDEA,Mac,Alfred,electerm,Git,typora,apifox 等
- 数据库系列:详细总结了常用数据库 mysql 技术点,以及工作中遇到的 mysql 问题等
- 懒人运维系列:总结好用的命令,解放双手不香吗?能用一个命令完成绝不用两个操作
- 数据结构与算法系列:总结数据结构和算法,不同类型针对性训练,提升编程思维,剑指大厂
非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨
博客目录
- 1.题目
- 2.示例
- 3.二维
- 4.一维
1.题目
给你一个整数数组
coins表示不同面额的硬币,另给一个整数amount表示总金额。请你计算并返回可以凑成总金额的硬币组合数。如果任何硬币组合都无法凑出总金额,返回
0。假设每一种面额的硬币有无限个。
题目数据保证结果符合 32 位带符号整数。
2.示例
示例 1:
输入:amount = 5, coins = [1, 2, 5]
输出:4
解释:有四种方式可以凑成总金额:
5=5
5=2+2+1
5=2+1+1+1
5=1+1+1+1+1
示例 2:
输入:amount = 3, coins = [2]
输出:0
解释:只用面额 2 的硬币不能凑成总金额 3 。
示例 3:
输入:amount = 10, coins = [10]
输出:1
3.二维
public class DP_07_ChangeMakingProblemLeetcode518_02 {public int change(int[] coins, int amount) {int[][] dp = new int[coins.length][amount + 1];for (int i = 0; i < coins.length; i++) {dp[i][0] = 1;}for (int j = 1; j < amount + 1; j++) {if (j >= coins[0]) {dp[0][j] = dp[0][j - coins[0]];}}print(dp);for (int i = 1; i < dp.length; i++) {for (int j = 1; j < amount + 1; j++) {if (j >= coins[i]) {dp[i][j] = dp[i - 1][j] + dp[i][j - coins[i]];}else {dp[i][j] = dp[i - 1][j];}}}print(dp);return dp[coins.length - 1][amount];}public static void main(String[] args) {DP_07_ChangeMakingProblemLeetcode518_02 leetcode = new DP_07_ChangeMakingProblemLeetcode518_02();int count = leetcode.change(new int[]{1, 2, 5}, 5);
// int count = leetcode.change(new int[]{2}, 3);
// int count = leetcode.change(new int[]{15, 10, 1}, 21);
// int count = leetcode.change(new int[]{25, 10, 5, 1}, 41);System.out.println(count);}static void print(int[][] dp) {System.out.println(StringUtil.repeat("-", (18)));for (int[] d : dp) {final Object[] array = Arrays.stream(d).boxed().toArray();System.out.printf((StringUtil.repeat("%2d ", d.length) + "%n"), array);}}
}
4.一维
public class ChangeMakingProblemLeetcode518 {/*面值 0 1 2 3 4 51 1 1 1 1 1 12 1 1 2 2 3 35 1 1 2 2 3 4面值 0 1 2 31 0 0 02 1 0 1 0*/public int change(int[] coins, int amount) {int[] dp = new int[amount + 1];dp[0] = 1;for (int coin : coins) {for (int j = coin; j < amount + 1; j++) {dp[j] = dp[j] + dp[j - coin];}}return dp[amount];}public static void main(String[] args) {ChangeMakingProblemLeetcode518 leetcode = new ChangeMakingProblemLeetcode518();int count = leetcode.change(new int[]{1, 2, 5}, 5);System.out.println(count);}}
觉得有用的话点个赞
👍🏻呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙
相关文章:
【算法-动态规划】零钱兑换 II-力扣 518
💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kuan 的首页,持续学…...
Hadoop3教程(六):HDFS中的DataNode
文章目录 (63)DataNode工作机制(64)数据完整性(65)掉线时限参数设置参考文献 (63)DataNode工作机制 DataNode内部存储了一个又一个Block,每个block由数据和数据元数据组…...
Macos音乐制作:Ableton Live 11 Suite for Mac中文版
Ableton Live 11是一款数字音频工作站软件,用于音乐制作、录音、混音和现场演出。它由Ableton公司开发,是一款极其流行的音乐制作软件之一。 以下是Ableton Live 11的一些主要特点和功能: Comping功能:Live 11增加了Comping功能…...
ThinkPHP5小语种学习平台
有需要请加文章底部Q哦 可远程调试 ThinkPHP5小语种学习平台 一 介绍 此小语种学习平台基于ThinkPHP5框架开发,数据库mysql,前端bootstrap。平台角色分为学生,教师和管理员三种。学生注册登录后可观看学习视频,收藏视频…...
升级包版本之后Reflections反射包在springboot jar环境下扫描不到class排查过程记录
📢📢📢📣📣📣 哈喽!大家好,我是「奇点」,江湖人称 singularity。刚工作几年,想和大家一同进步🤝🤝 一位上进心十足的【Java ToB端大厂…...
Excel 函数大全应用,包含各类常用函数
Excel 函数大全应用,各类函数应用与案例实操。 AIGC ChatGPT 职场案例 AI 绘画 与 短视频制作, Power BI 商业智能 68集, 数据库Mysql8.0 54集 数据库Oracle21C 142集, Office 2021实战, Python 数据分析࿰…...
深入浅出的介绍一下虚拟机VMware Workstation——part3(VMware快照)
虚拟机VMware使用 前言快照的原理快照的使用 前言 可以先查看之前的2篇博文,学习基础的虚拟机使用 深入浅出的介绍一下虚拟机VMware Workstation——part1 深入浅出的介绍一下虚拟机VMware Workstation——part2(详细安装与使用) 由于我们使用虚拟机的初衷就是用来…...
《Python基础教程》专栏总结篇
大家好,我是爱编程的喵喵。双985硕士毕业,现担任全栈工程师一职,热衷于将数据思维应用到工作与生活中。从事机器学习以及相关的前后端开发工作。曾在阿里云、科大讯飞、CCF等比赛获得多次Top名次。现为CSDN博客专家、人工智能领域优质创作者。…...
JavaScript 事件
HTML 事件是发生在 HTML 元素上的事情。 当在 HTML 页面中使用 JavaScript 时, JavaScript 可以触发这些事件。 HTML 事件 HTML 事件可以是浏览器行为,也可以是用户行为。 以下是 HTML 事件的实例: HTML 页面完成加载HTML input 字段改变…...
轻松学会这招,给大量视频批量添加滚动字幕不求人
想要给大量视频批量添加滚动字幕不求人吗?下面就教你一个简单的方法。首先你需要下载并安装一款名为“固乔剪辑助手”的软件,这是一款非常专业的视频剪辑软件,它可以帮助你快速地给大量视频添加滚动字幕。 打开固乔剪辑助手软件后,…...
哪个文字转语音配音软件最好用?
现在TTS技术不断发展,文字转语音技术已经越来越成熟,声音听着拟人度非常高,现在好用的软件也不在少数。很多手机里面都有自带的朗读功能,如果觉得声音不够,也可以自己下载软件使用。给大家分享一下我一直使用的一款文字…...
多关键词高亮显示
引入关键词文件,符合有条件的背景色高亮显示,也可取消。 <div id"testHtml"><p>写入的文本</p><p>关键词</p></div> var str 多个关键词,关键词文件,关键词 var strL str.replac…...
浅谈 33 台 iPad 发展史;OpenAI“悄悄”修改了企业核心价值观丨 RTE 开发者日报 Vol.67
开发者朋友们大家好: 这里是 「RTE 开发者日报」 ,每天和大家一起看新闻、聊八卦。我们的社区编辑团队会整理分享 RTE (Real Time Engagement) 领域内「有话题的 新闻 」、「有态度的 **观点 **」、「有意思的 数据 」、「有思考…...
Mysql之备份(Mysqldump)
本篇文章旨在介绍Mysql的备份,借助mysqldump命令。 1.准备数据 准备一个数据库d1,表t1 表结构如下: mysql> desc t1; ------------------------------------------------------- | Field | Type | Null | Key | Default | Extra …...
算法leetcode|84. 柱状图中最大的矩形(rust重拳出击)
文章目录 84. 柱状图中最大的矩形:样例 1:样例 2:提示: 分析:题解:rust:go:c:python:java: 84. 柱状图中最大的矩形: 给定 n 个非负整…...
Java中通过List中的stream流去匹配相同的字段去赋值,避免for循环去查询数据库进行赋值操作
List<EquipmentDeviceMessage> equipmentDeviceMessageInfo greenThinkTanksInfoPlanMapper.getEquipmentDeviceMessageInfo(phone, startDate, endDate); List<BladeUserVo> userList bladexsqlMapper.getUserList();Q:上面两个列表怎么使用流&#…...
开源酒店预订订房小程序源码系统+多元商户 前端+后端完整搭建教程 可二次开发
大家好啊,罗峰今天来给大家分享一款酒店预订订房小程序源码系统,这款系统进行了全新的升级,从原来的单门店升级成了多门店,可以自由切换账号,统一管理。功能强大。以下是部分代码截图: 酒店预订订房小程序源…...
Leetcode 2906. Construct Product Matrix
Leetcode 2906. Construct Product Matrix 1. 解题思路2. 代码实现 题目链接:2906. Construct Product Matrix 1. 解题思路 这道题其实算是一道数论题。 本来其实python的pow内置函数已经帮我们基本处理了所有的问题了,但是这里稍微做了一点复杂化操…...
【Leetcode Sheet】Weekly Practice 11
Leetcode Test 2731 移动机器人(10.10) 有一些机器人分布在一条无限长的数轴上,他们初始坐标用一个下标从 0 开始的整数数组 nums 表示。当你给机器人下达命令时,它们以每秒钟一单位的速度开始移动。 给你一个字符串 s ,每个字符按顺序分别…...
本地PHP搭建简单Imagewheel私人云图床,在外远程访问
🔥博客主页: 小羊失眠啦 🔖系列专栏: C语言、Linux 🌥️每日语录:追逐影子的人,自己就是影子。 ❤️感谢大家点赞👍收藏⭐评论✍️ 1.前言 云存储在前几年风头无两,云存…...
云容笔谈开源镜像优势:免编译、免依赖、BF16原生支持,开箱即生成
云容笔谈开源镜像优势:免编译、免依赖、BF16原生支持,开箱即生成 最近在尝试各种AI图像生成工具时,我发现了一个很有意思的现象:很多工具要么安装配置复杂,要么生成效果不尽如人意,特别是想要生成具有东方…...
基于S7-200 PLC与组态王的大棚控制系统:产品原理图与IO分配详解
基于S7-200 PLC和组态王温室大棚控制 我们主要的后发送的产品有,带解释的梯形图接线图原理图图纸,io分配,组态画面 菜农张叔上周还给我打电话吐槽:“小王啊,上周那场降温加突然转晴,我三点爬起来盖半层棉被…...
Qwen3.5-4B-Claude-Opus部署教程:模型路径软链失效时的容错加载机制
Qwen3.5-4B-Claude-Opus部署教程:模型路径软链失效时的容错加载机制 1. 模型概述 Qwen3.5-4B-Claude-4.6-Opus-Reasoning-Distilled-GGUF是基于Qwen3.5-4B的推理蒸馏模型,特别强化了结构化分析、分步骤回答以及代码与逻辑类问题的处理能力。该版本以GG…...
asp毕业设计下载(全套源码+配套论文)——基于asp+sqlserver的WEB社区论坛设计与实现
基于aspsqlserver的WEB社区论坛设计与实现(毕业论文程序源码) 大家好,今天给大家介绍基于aspsqlserver的WEB社区论坛设计与实现,更多精选毕业设计项目下载见文末哦。 文章目录: 基于aspsqlserver的WEB社区论坛设计与…...
利用快马平台快速生成PyTorch图像分类原型,十分钟验证模型思路
最近在尝试用PyTorch做图像分类的原型验证时,发现从零开始搭建环境、写基础代码特别耗时。后来尝试用InsCode(快马)平台生成项目模板,十分钟就完成了模型验证。这里分享下用PyTorch快速构建MNIST分类器的关键步骤和踩坑经验。 数据准备环节 平台生成的代…...
Spring Framework测试框架完整指南:从单元测试到集成测试的10个最佳实践
Spring Framework测试框架完整指南:从单元测试到集成测试的10个最佳实践 【免费下载链接】spring-framework spring-projects/spring-framework: 一个基于 Java 的开源应用程序框架,用于构建企业级 Java 应用程序。适合用于构建各种企业级 Java 应用程序…...
Python实战:从零构建基于腾讯混元大模型的智能客服系统
1. 为什么选择腾讯混元大模型做智能客服 最近两年大模型技术突飞猛进,但真正要把大模型落地到实际业务中,很多开发者都会遇到三个头疼的问题:第一是模型效果不稳定,第二是API调用复杂,第三是业务逻辑难集成。我在帮几…...
7大核心优势!Windows环境PM2服务化终极解决方案:从痛点到实战的完整指南
7大核心优势!Windows环境PM2服务化终极解决方案:从痛点到实战的完整指南 【免费下载链接】pm2-installer Install PM2 offline as a service on Windows or Linux. Mostly designed for Windows. 项目地址: https://gitcode.com/gh_mirrors/pm/pm2-ins…...
告别蓝牙!用STM32F103和NRF24L01搭建低成本2.4G无线通信,实测传输距离与稳定性
STM32F103与NRF24L01构建高性能2.4G私有通信系统实战指南 在物联网设备爆发式增长的今天,无线通信模块的选择成为硬件开发者面临的首要难题。面对市面上琳琅满目的蓝牙、Wi-Fi和私有协议模块,如何根据项目需求选择最具性价比的解决方案?本文将…...
Qt与MongoDB的C++实战:从基础连接到图像数据存储
1. 为什么选择Qt与MongoDB组合 在开发需要处理大量非结构化数据的应用时,传统关系型数据库往往会遇到性能瓶颈。我曾经在一个智能安防项目中,需要存储和分析数万张人脸识别图片,正是这个需求让我深入研究了Qt与MongoDB的组合方案。 MongoDB作…...

