代码随想录 -- 动态规划 -- 完全平方数

279. 完全平方数 - 力扣(LeetCode)

思路:

  • dpj的含义:组成和为n最少需要dpj个完全平方数
  • 递推公式:dpj=min(dpj,dpj-i\*i+1)
  • 初始化:dp0=0,其他的初始化为比10000还大的数
  • 遍历顺序:先物品后背包
python 复制代码
class Solution(object):
    def numSquares(self, n):
        dp=[10010]*(n+1)
        dp[0]=0
        for i in range(1,n/2+2):
            for j in range(i*i,n+1):
                dp[j]=min(dp[j],dp[j-i*i]+1)
        return dp[n]
相关推荐
2601_957883842 分钟前
2026年9月:专业解决雷神笔记本维修难题
python·电脑
迷途之人不知返6 分钟前
算法系列5:位运算
算法
牢姐与蒯9 分钟前
c++加餐之位图
c++·算法·哈希
Omics Pro23 分钟前
预测性虚拟细胞中显式机理算子
大数据·数据库·人工智能·python·算法·机器学习·自然语言处理
驭渊的小故事25 分钟前
算法实战:滑动窗口、素数枚举与字符串模拟(三道经典题解)
java·算法
秋名RG33 分钟前
Java历代LTS版本新特性详解(代码增强版)
java·开发语言·python
牢姐与蒯35 分钟前
位运算及其oj题
c++·算法
276695829235 分钟前
youdao/有道翻译APP 算法协议分析
开发语言·前端·python·sign·youdao·有道翻译app算法·有道app协议请求
Logic1013 小时前
C语言/数据结构字符串题解:按字符类型重排(数字→字母→符号)——三趟扫描稳定分区
c语言·数据结构·字符串·时间复杂度·计数排序·算法题·ascii
夏天拐跑了西瓜8 小时前
一文入门LangChain:从框架认知到构建你的第一个AI Agent
python·langchain·conda·agent