leetcode 343. 整数拆分(Integer Break)
生活随笔
收集整理的這篇文章主要介紹了
leetcode 343. 整数拆分(Integer Break)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
- 題目描述:
- 示例 1:
- 示例 2:
- 解法:
題目描述:
給定一個(gè)
正整數(shù) n,將其拆分為至少兩個(gè)正整數(shù)的和,并使這些整數(shù)的乘積最大化。 返回你可以獲得的最大乘積。
示例 1:
輸入: 2 輸出: 1 解釋: 2 = 1 + 1, 1 × 1 = 1。示例 2:
輸入: 10 輸出: 36 解釋: 10 = 3 + 3 + 4, 3 × 3 × 4 = 36。說(shuō)明: 你可以假設(shè) n 不小于 2 且不大于 58。
解法:
class Solution { public:int integerBreak(int n) {//2, 2,//3, 3,//4, 4,//5, 2 + 3if(n <= 3){return n-1;}vector<long long> lst(60, 0);for(int i = 2; i < 60; i++){lst[i] = i;for(int j = 1; j <= i/2; j++){lst[i] = max(lst[i], lst[j]*lst[i-j]);}}return lst[n];} };轉(zhuǎn)載于:https://www.cnblogs.com/zhanzq/p/10930503.html
總結(jié)
以上是生活随笔為你收集整理的leetcode 343. 整数拆分(Integer Break)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 《学习之道》第十章总结
- 下一篇: 跟我一起学编程—《Scratch编程》第