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

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]
相关推荐
拓恒技术21 小时前
城市管理中的无人机AI识别算法:架构、场景与落地
人工智能·算法·视觉检测·无人机·1024程序员节
成信吴彦祖21 小时前
当前专业的无人机RID侦测主站供应商主要有哪些
python·1024程序员节
编程的一拳超人21 小时前
【元宝搜索开发者征文大赛】四语实战:Java/Python/Go/Node.js 构建 AI 搜索应用全攻略
java·python·golang·node.js·agent
番茄味城市甜菜21 小时前
数据结构:单链表(C语言)
数据结构·链表·1024程序员节
fanruitian21 小时前
python anaconda jupyter notebook
python
蹊黎21 小时前
C++中stack、queue、priority queue类的部分简单实现
数据结构·c++·visualstudio·1024程序员节
云和数据.ChenGuang21 小时前
Python 菜鸟入门:字典(dict)类型详解与 CRUD 实战案例
开发语言·人工智能·python
吴可可12321 小时前
Accumark二次开发环境搭建与API入门
算法
小白今天也很酷21 小时前
MCXN947更新板载DAP_Link固件的方法
c语言·python·单片机·ubuntu·excel·1024程序员节
小羊没烦恼!21 小时前
.NET无侵入自动化探针原理和主流实现
运维·开发语言·javascript·python·自动化·.net·1024程序员节