整数拆分——力扣343

文章目录

      • 题目描述
      • [法一 动态规划](#法一 动态规划)
      • [法二 动态规划优化](#法二 动态规划优化)
      • [法三 数学](#法三 数学)

题目描述

法一 动态规划

cpp 复制代码
int integerBreak(int n) {
		vector<int> dp(n+1);
		for(int i=2;i<=n;i++){
			int curMax = 0;
			for(int j=1;j<i;j++){
				curMax = max(curMax, max(j*(i-j), j*dp[i-j]));
			}
			dp[i] = curMax;
		} 
		return dp[n];
	}

法二 动态规划优化

cpp 复制代码
int integerBreak(int n){
		if(n<=3){
			return n-1;
		}	
		vector<int> dp(n+1);
		dp[2]=1;
		for(int i=3;i<=n;i++){
			dp[i] = max(max(2*(i-2), 2*dp[i-2]), max(3*(i-3), 3*dp[i-3]));
		}
		return dp[n];
	}

法三 数学

cpp 复制代码
int integerBreak(int n){
		if(n<=3){
			return n-1;
		}
		int chu = n/3, mod = n%3;
		if(mod==0){
			return (int)pow(3, chu);
		} else if(mod==1){
			return (int)pow(3, chu-1)*4;
		} else {
			return (int)pow(3, chu)*2;
		}
	}
相关推荐
生成论实验室5 分钟前
《事件关系阴阳博弈动力学:识势应势之道》第一篇:生成正在发生——从《即事经》到事件-关系网络
人工智能·科技·算法·架构·创业创新
漂流瓶jz9 分钟前
UVA-1152 和为0的4个值 题解答案代码 算法竞赛入门经典第二版
数据结构·算法·二分查找·题解·aoapc·算法竞赛入门经典·uva
leoufung17 分钟前
LeetCode 76:Minimum Window Substring 题解与滑动窗口思维详解
算法·leetcode·职场和发展
小O的算法实验室30 分钟前
2026年IEEE TETCI,山区环境下基于双种群进化的协同无人机巡逻任务协同优化,深度解析+性能实测
算法·论文复现·智能算法·智能算法改进
A7bert77739 分钟前
【YOLOv8pose部署至RDK X5】模型训练→转换bin→Sunrise 5部署
c++·python·深度学习·yolo·目标检测
你撅嘴真丑43 分钟前
map 与 set容器的应用--话题焦点人物
数据结构
生成论实验室1 小时前
《事件关系阴阳博弈动力学:识势应势之道》第二篇:阴阳博弈——认知的动力学基础
数据结构·人工智能·科技·神经网络·算法
li1670902701 小时前
第二十七章:智能指针
c语言·数据结构·c++·visual studio
风筝在晴天搁浅1 小时前
字节高频题 小于n的最大数
算法
LabVIEW开发1 小时前
LabVIEW水力机组空蚀在线监测
算法·labview·labview知识·labview功能·labview程序