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

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_962885728 小时前
baostock vs Tushare:哪个免费股票数据 API 更好用?
python
greencherry_8 小时前
大连模屿石膏课模具配比全固定,调色浇注之外还缺什么?
算法·生活
hahaha60168 小时前
数字图像锐化
开发语言·python
xiangjiaodalishi8 小时前
主流 AI 爬虫 User-Agent 清单大全:分组、配置与持续维护(2026 版)
人工智能·爬虫·python
普贤莲花8 小时前
先学Workbuddy还是“人工智能训练师”,或者python基础课?
开发语言·人工智能·python
砚底藏山河8 小时前
python量化实操:回测数据缓存与重放
java·python·金融·1024程序员节
晒太羊的猫9 小时前
hot100子串
java·算法·leetcode
第404号工位9 小时前
浏览器的“无痕模式”是当代最大安慰剂?我用 30 行 JS 提取硬件指纹,跨网络换代理照样精准锁定你
linux·人工智能·python
小豆庄9 小时前
视频脱敏引擎的追踪难题:转场误判定、ID撞号和淡入窗口
qt·算法·目标检测·音视频·视频·敏捷流程
凌界天行9 小时前
知名的无人机侦测肩灯制造厂名声
python