leetcode:343.整数拆分

解题思路:

拆分的越多越好(暂且认为),尽可能拆成m个近似相等的数,会使得乘积最大

dp含义:将i进行拆分得到最大的积为dp[i]

递推公式:j x dp[i-j](固定j,只通过凑dp[i-j]进而实现所有情况)

初始化:dp[0] = 0,dp[1] = 0,dp[2] = 1

遍历顺序:根据递推公式,dp[i] = max(dp[i],max(dp[i-j]*j,(i-j)*j)),所以是从前往后遍历,先有dp[i-j]再有dp[i]。

代码实现:

有两种方案:i拆分出来j之后一是不再进行拆分,二是继续拆分。(主要表现在递推公式中)

相关推荐
重生之后端学习2 分钟前
105. 从前序与中序遍历序列构造二叉树
java·数据结构·后端·算法·深度优先
样例过了就是过了2 分钟前
LeetCodere热题100 最小覆盖子串
数据结构·算法·leetcode
追随者永远是胜利者5 分钟前
(LeetCode-Hot100)10. 正则表达式匹配
java·算法·leetcode·go
We་ct6 分钟前
LeetCode 146. LRU缓存:题解+代码详解
前端·算法·leetcode·链表·缓存·typescript
烟花落o8 分钟前
【数据结构系列03】链表的回文解构、相交链表
数据结构·算法·链表·刷题
努力学算法的蒟蒻15 分钟前
day87(2.16)——leetcode面试经典150
数据结构·leetcode·面试
追随者永远是胜利者18 分钟前
(LeetCode-Hot100)17. 电话号码的字母组合
java·算法·leetcode·职场和发展·go
不想看见40419 分钟前
Shortest Bridge -- 广度优先搜索 --力扣101算法题解笔记
算法·leetcode·宽度优先
流云鹤26 分钟前
2026牛客寒假算法基础集训营5(B D G J F )
算法
教男朋友学大模型27 分钟前
LoRA 为什么必须把一个矩阵初始化为0
人工智能·算法·面试·求职招聘