DP-343. 整数拆分

给定一个正整数 n ,将其拆分为 k正整数 的和( k >= 2 ),并使这些整数的乘积最大化。

返回 你可以获得的最大乘积

示例 1:

复制代码
输入: n = 2
输出: 1
解释: 2 = 1 + 1, 1 × 1 = 1。

示例 2:

复制代码
输入: n = 10
输出: 36
解释: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。

提示:

  • 2 <= n <= 58
cpp 复制代码
class Solution {
public:
    int integerBreak(int n) {
        vector<int> dp(n+1, 0);
        dp[1] = 0;
        dp[2] = 1;

        for(int i = 3; i <= n; i++) {
            for(int j = 1; j < i; j++) {
                dp[i] = max(dp[i], max(j * (i - j), j * dp[i - j]));
            }
        }

        return dp[n];
    }
};
相关推荐
Sun_light9 分钟前
队列:先进先出的线性数据结构及其应用
前端·javascript·算法
吕小鸣36 分钟前
Coze、Dify、FastGPT三大AI智能平台架构与能力对比
算法
jndingxin1 小时前
c++ 面试题(1)-----深度优先搜索(DFS)实现
c++·算法·深度优先
北极的树1 小时前
谁说AI只会模仿,从Google AlphaEvolve项目看算法的自主创新
人工智能·算法·gemini
Watink Cpper1 小时前
[灵感源于算法] 算法问题的优雅解法
linux·开发语言·数据结构·c++·算法·leetcode
-qOVOp-1 小时前
408第一季 - 数据结构 - 折半查找与二叉排序树
数据结构
随意0231 小时前
STL 3算法
开发语言·c++·算法
_风满楼2 小时前
如何优雅展示日历中的重叠日程?三步搞定复杂布局
前端·javascript·算法
এ᭄画画的北北3 小时前
力扣-35.搜索插入位置
数据结构·算法·leetcode
cylat3 小时前
Day23 pipeline管道
人工智能·python·算法·机器学习