518. 零钱兑换II(完全背包问题)

题目

题解

python 复制代码
class Solution:
    def change(self, amount: int, coins: List[int]) -> int:
        # 状态定义:dp[i][j]表示用前i种硬币,刚好凑齐面额j的方法有多少
        dp = [[0 for i in range(amount+1)] for j in range(len(coins)+1)]
        # base case
        for i in range(len(coins)+1):
            dp[i][0] = 1
        # 状态转移
        for i in range(1, len(coins) + 1):
            for j in range(1, amount + 1):
                # 第i枚硬币的面值小于要凑齐的面额,可以选择「用」和「不用」
                # 注意这里的判断条件是>=,与背包问题里的>有区别。
                if j - coins[i-1] >= 0:
                    dp[i][j] = dp[i-1][j] + dp[i][j - coins[i-1]]
                # 否则不能用
                else:
                    dp[i][j] = dp[i-1][j]
        return dp[len(coins)][amount]
相关推荐
ljt27249606611 小时前
Flutter笔记--envied
前端·笔记·flutter
卷无止境2 小时前
Python能做嵌入式开发吗?一份写给动手派的生态与硬件全景图
后端·python
月光船幽幽6 小时前
检测用户意图复杂性的关键方法
人工智能·python
疯狂打码的少年6 小时前
【数据库技术】关系模型基本概念(关系/属性/元组/键)
java·服务器·数据库·笔记
有梦想的骇客9 小时前
PyTorch学习笔记
pytorch·笔记·学习
刃神太酷啦9 小时前
Linux 系统 MySQL 完整安装配置教程:从卸载 MariaDB 到优化 my.cnf----《Hello MySQL!》(1)
android·linux·c语言·c++·mysql·leetcode·mariadb
威联通网络存储9 小时前
TS-h3087XU-RP 汽车零部件质检追溯部署
python·汽车
你驴我9 小时前
WhatsApp 多账号场景下的会话归档与历史消息检索优化实践
后端·python
IT毕设实战小研9 小时前
基于安卓的空气质量查询系统
android·大数据·vue.js·爬虫·python·django·课程设计
Capricorn19889 小时前
个人知识库接入大模型频现“幻觉引用”?排查 RAG 溯源失效问题,解析知芽构建可信第三大脑的底层架构
大数据·论文阅读·人工智能·笔记·架构·论文笔记