一:题目

二:上码

class Solution {public:/**思路:1.分析题意:将一个数拆分为几个数相加的和  然后求取这几个数相乘的最大积,这个就很动态规划也就是我们可以得到多种结果,要在多种结果中取最优2.动态规划:1>:确定dp数组代表啥,以及下标的含义dp[i]代表的就是最大乘积数,i代表的就是n2>:确定dp数组的状态递推公式我们将i划分为多个数的和那么此时可以分为两种情况(两个数 / 多个数)两个数: 我们将i划分为 j 和 i-j(这里特别声明j就是我们划分的数值) ==> i = j + (i-j);多个数: 那就将i划分为 j 但将(i-j)进行继续划分 ==> i = j +  dp[i-j];这里我们的j的取值范围是[1,i-1];(因为j是划分的数值,那你最少得取值为1吧,同时也不能取值为i吧)dp[i] = max(dp[i],max(j*(i-j),j*dp[i-j]));//因为j的数值不同,那么dp[i]也不同所以也要求取其最值3>:确定dp数组的初始化i>=2的  那么dp[2] = 1;4>:确定dp数组的遍历顺序肯定从前向后遍历 (比如10 还需要用到3的最大乘积呢);5>:举例验证*/int integerBreak(int n) {vector<int>dp(n+1);dp[2] = 1;for(int i = 3; i <= n; i++) {//我们求取一个数的划分后的最大乘积,那么肯定需要用到前面的数的最大乘积for(int j = 1; j < i-1; j++) {dp[i] = max(dp[i],max(j*(i-j),j*dp[i-j]));}}return dp[n];}
};


从没思路 到看题解看不懂 再到看了好多题解懂了 再到自己写出来 见证了我的喜怒哀乐
安 各位!

leetcode343. 整数拆分(思路+详解)相关推荐

  1. c语言 整数拆分,C++ 整数拆分方法详解

    一.问题背景 整数拆分,指把一个整数分解成若干个整数的和 如 3=2+1=1+1+1 共2种拆分 我们认为2+1与1+2为同一种拆分 二.定义 在整数n的拆分中,最大的拆分数为m,我们记它的方案数为 ...

  2. c语言 数字分离编程,C++ 整数拆分方法详解

    一.问题背景 整数拆分,指把一个整数分解成若干个整数的和 如 3=2+1=1+1+1 共2种拆分 我们认为2+1与1+2为同一种拆分 二.定义 在整数n的拆分中,最大的拆分数为m,我们记它的方案数为 ...

  3. php数组10000分割1000_PHP切割整数工具类似微信红包金额分配的思路详解

    主要代码:NumberSlicing.php 思路:将数字按精度放大倍数,比如切割数字1,切割的份数是10,精度是0.01,则将1放大100 X 10倍,然后再来对加了1000倍权重后的值进行切割.切 ...

  4. python正则表达式提取数字比较好_python正则表达式从字符串中提取数字的思路详解...

    python从字符串中提取数字 使用正则表达式,用法如下: ## 总结 ## ^ 匹配字符串的开始. ## $ 匹配字符串的结尾. ## \b 匹配一个单词的边界. ## \d 匹配任意数字. ## ...

  5. 【蓝桥杯Python组】2022年第十三届蓝桥杯省赛B组Python解题思路详解

    第十三届蓝桥杯省赛B组Python解题思路详解 因为今年采用线上的举办方式进行比赛,所以组委会对题目做了一定的调整,将原来的5道填空+5道编程题变成了2道填空+8道编程题,据说是为了防止抄袭.其实题目 ...

  6. 【直播】陈安东,但扬:CNN模型搭建、训练以及LSTM模型思路详解

    CNN模型搭建.训练以及LSTM模型思路详解 目前 Datawhale第24期组队学习 正在如火如荼的进行中.为了大家更好的学习"零基础入门语音识别(食物声音识别)"的课程设计者 ...

  7. vuepdf转换html,Vue网页html转换PDF(最低兼容ie10)的思路详解

    Vue网页html转换PDF(最低兼容ie10)的思路详解 发布时间:2020-10-16 13:05:09 来源:脚本之家 阅读:95 作者:冷藏封 HTML转PDF: 1.页面底层实现--Vue: ...

  8. python处理excel大数据-Python实现大数据收集至excel的思路详解

    一.在工程目录中新建一个excel文件 二.使用python脚本程序将目标excel文件中的列头写入,本文省略该部分的code展示,可自行网上查询 三.以下code内容为:实现从接口获取到的数据值写入 ...

  9. Java编程配置思路详解

    Java编程配置思路详解 SpringBoot虽然提供了很多优秀的starter帮助我们快速开发,可实际生产环境的特殊性,我们依然需要对默认整合配置做自定义操作,提高程序的可控性,虽然你配的不一定比官 ...

最新文章

  1. JQuery Smart UI 简介(五) — 框架设计【前篇】(前台UI层架构)
  2. 汇编loop指令及用法解释
  3. 如何设置SSH访问的时间限制
  4. javascript 模块化机制
  5. 编译安装dropbear
  6. 2.6配置自定义PropertyEditors
  7. delphi启动ie调用本地html传参数_年轻人不讲武德啊!了解下浏览器如何解析html、css,js
  8. ECSHOP获取当前分类下商品的品牌列表
  9. 艾永亮:这家酒店如何让你毫不犹豫点上五星好评?
  10. 非线性控制3.0——自适应模糊控制
  11. catia v5法矢数据软件_CATIA V5 Start Model车身建模
  12. 被人民日报等官媒反复强调的​「企业家精神」,到底是什么?
  13. printJs 打印HTML 去掉页眉页脚
  14. Golang面试问题汇总
  15. PHP中级程序员常见面试题
  16. LINUX(socket)网络编程部分头文件归纳解释
  17. android跑马灯效果横向,Android TextView 横向滚动(跑马灯效果)
  18. 解剖caffe mode:Blobs, Layers和Nets
  19. 2022年泰迪杯数据分析_B题:银行客户忠诚度分析赛题数据_任务五
  20. XSX和PS5对标的电脑配置(2021年12月10日分析)

热门文章

  1. ASP.NET MVC @helper使用说明
  2. TypeScript 3.9 正式发布!平均编译时长从 26 秒缩短至 10 秒
  3. ArrayList用法说明
  4. Android之在TextView里面部分文字变颜色并且可以点击
  5. linux c之通过消息队列实现进程通信
  6. Java里面Unreachable code
  7. 《假如编程是魔法之零基础看得懂的Python入门教程 》——(六)精简魔法更强大
  8. linux如何调试elf程序,Linux应用程序elf描述
  9. 我的世界java版forge怎么用_我的世界电脑版MOD怎么用 我的世界pc版forge怎么安装...
  10. 软件项目组织管理(十)项目沟通管理