当前位置: 首页 > news >正文

代码随想录算法营Day42 | 322. 零钱兑换,279. 完全平方数,139. 单词拆分

322. 零钱兑换

这道题先遍历物品也就是每个不同的硬币,然后遍历该硬币面值到目标值的dp数组,状态转移公式为dp[i] = min(dp[i],dp[i-coin]+1)

class Solution:
    def coinChange(self, coins: List[int], amount: int) -> int:
        dp = [float('inf')] * (amount + 1)
        dp[0] = 0
        for coin in coins:
            for i in range(coin,len(dp)):
                if dp[i-coin] != float('inf'):
                    dp[i] = min(dp[i],dp[i-coin]+1)
        return dp[amount] if dp[amount] != float('inf') else -1

279. 完全平方数

这个背包的大小就是这个目标数,而物品则是每个小于等于该数平方根的所有数。

class Solution:
    def numSquares(self, n: int) -> int:
        dp = [0] * (n + 1)
        for i in range(1,n+1):
            minn = float('inf')
            for j in range(1,int(i**0.5)+1):
                minn = min(minn,dp[i-j*j])
            dp[i] = minn + 1
        return dp[n]

139. 单词拆分

class Solution:
    def wordBreak(self, s: str, wordDict: List[str]) -> bool:
        wordDictSet = set(wordDict)
        dp = [False] * (len(s) + 1)
        dp[0] = True
        for i in range(1,len(s)+1):
            for j in range(i):
                if dp[j] and s[j:i] in wordDictSet:
                    dp[i] = True
                    break
        return dp[len(s)]

http://www.dtcms.com/a/23909.html

相关文章:

  • STM32 定时器产生定周期方法
  • 上位机知识篇---与、或、移位操作(、|、>><<)
  • AOSP Android14 部分页面使用触摸会崩溃
  • 视频转序列帧
  • 巧用 PasteMate,联合 DeepSeek 与 LaTeX 高效生成 PDF 文档
  • ERP对制造业务有何价值?
  • Ubuntu18.04安装rvm、ruby2.6.5和rails5.2.6
  • eBPF驱动的实时内核安全防护体系:构建零日漏洞免疫的云原生基础设施
  • 深度学习笔记之自然语言处理(NLP)
  • DeepSeek 助力 Vue 开发:打造丝滑的范围选择器(Range Picker)
  • 豪越科技:消防安全重点单位一体化安全管控
  • LLM有哪些可控超参数
  • MySQL性能优化
  • Redis(高阶篇)03章——缓存双写一致性之更新策略探讨
  • Azure Synapse Dedicated SQL Pool统计指定表中各字段的空值、空字符串或零值比例
  • 什么是 近端策略优化算法PPO
  • 【动态规划】(二)动态规划——0-1背包问题
  • 第35次CCF计算机软件能力认证 python 参考代码
  • RK3588 ubuntu20.04 换源 aarch64源
  • redis数据类型
  • WebAssembly 3.0发布:浏览器端高性能计算迎来新突破!
  • DFS算法篇:理解递归,熟悉递归,成为递归
  • huggingface/pytorch-image-models
  • java实现不带哨兵节点的双向链表(二)
  • 力扣-二叉树-112 路径总和
  • 【ISO 14229-1:2023 UDS诊断全量测试用例清单系列:第十一节】
  • 简单介绍输入URL到展出页面的过程
  • 【亚马逊开发者账号02】终审问题SA+review_Pre-review+Doc.xlsx
  • 【Linux线程】阻塞队列环形队列(消费者生产者模型的实现)
  • Python常见面试题的详解5