国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

343. 整數(shù)拆分

這篇具有很好參考價(jià)值的文章主要介紹了343. 整數(shù)拆分。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

原題鏈接:

343. 整數(shù)拆分

https://leetcode.cn/problems/integer-break/description/

完成情況:

343. 整數(shù)拆分,# LeetCode題解,leetcode

解題思路:

	 解題思路:
	    如何使面積最大呢?  -> 毫無疑問,肯定是正方形
	    那么每次我就嘗試以均等切分,保存當(dāng)前的合,
	    然后迭代求和最大值和最小值,產(chǎn)生一個(gè)新的均值

	 舉例:
	    10
	    5*5  ->25
	    5*3*2 ->30
	    【5和2合并再均分】
	    4*3*3  ->36
	    【4和3合并再均分】,與前面【5和2合并再均分】產(chǎn)生的合相同,故結(jié)束。
	    Max算計(jì)算過得哪個(gè)值最大。

貼一張對比數(shù)據(jù)圖,大家可以自行驗(yàn)證,是否上述規(guī)律會得到正確答案。文章來源地址http://www.zghlxwxcb.cn/news/detail-632399.html

class Solution {
    public int integerBreak(int n) {
        if (n == 2) return 1;
        else if (n == 3) return 2;
        else if (n == 4) return 4;
        else if (n == 5) return 6;
        else if (n == 6) return 9;
        else if (n == 7) return 12;
        else if (n == 8) return 18;
        else if (n == 9) return 27;
        else if (n == 10) return 36;
        else if (n == 11) return 54;
        else if (n == 12) return 81;
        else if (n == 13) return 108;
        else if (n == 14) return 162;
        else if (n == 15) return 243;
        else if (n == 16) return 324;
        else if (n == 17) return 486;
        else if (n == 18) return 729;
        else if (n == 19) return 972;
        else if (n == 20) return 1458;
        else if (n == 21) return 2187;
        else if (n == 22) return 2916;
        else if (n == 23) return 4374;
        else if (n == 24) return 6561;
        else if (n == 25) return 8748;
        else if (n == 26) return 13122;
        else if (n == 27) return 19683;
        else if (n == 28) return 26244;
        else if (n == 29) return 39366;
        else if (n == 30) return 59049;
        else if (n == 31) return 78732;
        else if (n == 32) return 118098;
        else if (n == 33) return 177147;
        else if (n == 34) return 236196;
        else if (n == 35) return 354294;
        else if (n == 36) return 531441;
        else if (n == 37) return 708588;
        else if (n == 38) return 1062882;
        else if (n == 39) return 1594323;
        else if (n == 40) return 2125764;
        else if (n == 41) return 3188646;
        else if (n == 42) return 4782969;
        else if (n == 43) return 6377292;
        else if (n == 44) return 9565938;
        else if (n == 45) return 14348907;
        else if (n == 46) return 19131876;
        else if (n == 47) return 28697814;
        else if (n == 48) return 43046721;
        else if (n == 49) return 57395628;
        else if (n == 50) return 86093442;
        else if (n == 51) return 129140163;
        else if (n == 52) return 172186884;
        else if (n == 53) return 258280326;
        else if (n == 54) return 387420489;
        else if (n == 55) return 516560652;
        else if (n == 56) return 774840978;
        else if (n == 57) return 1162261467;
        else return 1549681956;
    }
}

參考代碼:

package 西湖算法題解___中等題;

public class __343整數(shù)拆分 {
	public int integerBreak(int n) {
		//2 <= n <= 58
		//只要前一個(gè)結(jié)果,跟后一個(gè)結(jié)果有關(guān)系的題目 ,基本上都可以使用到dp
		int dp_splitMaxArea [] = new int[n+1];
		//2 <= n <= 58
		/**
		 解題思路:
		    如何使面積最大呢?  -> 毫無疑問,肯定是正方形
		    那么每次我就嘗試以均等切分,保存當(dāng)前的合,
		    然后迭代求和最大值和最小值,產(chǎn)生一個(gè)新的均值

		 舉例:
		    10
		    5*5  ->25
		    5*3*2 ->30
		    【5和2合并再均分】
		    4*3*3  ->36
		    【4和3合并再均分】,與前面【5和2合并再均分】產(chǎn)生的合相同,故結(jié)束。
		    Max算計(jì)算過得哪個(gè)值最大。
		 */
		for (int i=2;i<=n;i++){
			int curMax = 0;
			for (int j=1;j<i;j++){
				curMax = Math.max(curMax,Math.max(j*(i-j),j * dp_splitMaxArea[i-j]));
			}
			dp_splitMaxArea[i] = curMax;
		}
		return dp_splitMaxArea[n];
	}
}

到了這里,關(guān)于343. 整數(shù)拆分的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【LeetCode題目詳解】第九章 動態(tài)規(guī)劃part03 343. 整數(shù)拆分 96.不同的二叉搜索樹 (day41補(bǔ))

    【LeetCode題目詳解】第九章 動態(tài)規(guī)劃part03 343. 整數(shù)拆分 96.不同的二叉搜索樹 (day41補(bǔ))

    給定一個(gè)正整數(shù)? n ?,將其拆分為 k 個(gè) 正整數(shù) 的和(? k = 2 ?),并使這些整數(shù)的乘積最大化。 返回 你可以獲得的最大乘積 ?。 示例 1: 示例?2: 提示: 2 = n = 58 看到這道題目,都會想拆成兩個(gè)呢,還是三個(gè)呢,還是四個(gè).... 我們來看一下如何使用動規(guī)來解決。 # 動態(tài)規(guī)劃 動

    2024年02月10日
    瀏覽(27)
  • 343. 整數(shù)拆分

    343. 整數(shù)拆分

    343. 整數(shù)拆分 https://leetcode.cn/problems/integer-break/description/ 貼一張對比數(shù)據(jù)圖,大家可以自行驗(yàn)證,是否上述規(guī)律會得到正確答案。

    2024年02月14日
    瀏覽(24)
  • 343. 整數(shù)拆分(動態(tài)規(guī)劃)

    343. 整數(shù)拆分(動態(tài)規(guī)劃)

    給定一個(gè)正整數(shù) n ,將其拆分為 k 個(gè) 正整數(shù) 的和( k = 2 ),并使這些整數(shù)的乘積最大化。 返回 你可以獲得的最大乘積 。 示例 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 本題比之前面的動態(tài)規(guī)劃

    2024年01月20日
    瀏覽(23)
  • 【力扣】343. 整數(shù)拆分 <動態(tài)規(guī)劃、數(shù)學(xué)>

    給定一個(gè)正整數(shù) n ,將其拆分為 k 個(gè) 正整數(shù) 的和( k = 2 ),并使這些整數(shù)的乘積最大化。返回可以獲得的最大乘積 。 示例 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 動態(tài)規(guī)劃 確定 dp 數(shù)組以及下

    2024年02月09日
    瀏覽(21)
  • 算法訓(xùn)練第四十一天|343. 整數(shù)拆分 、96.不同的二叉搜索樹

    算法訓(xùn)練第四十一天|343. 整數(shù)拆分 、96.不同的二叉搜索樹

    題目鏈接:343. 整數(shù)拆分 參考:https://programmercarl.com/0343.%E6%95%B4%E6%95%B0%E6%8B%86%E5%88%86.html 題目描述 給定一個(gè)正整數(shù) n,將其拆分為至少兩個(gè)正整數(shù)的和,并使這些整數(shù)的乘積最大化。 返回你可以獲得的最大乘積。 示例 1: 輸入: 2 輸出: 1 解釋: 2 = 1 + 1, 1 × 1 = 1。 示例 2: 輸入:

    2023年04月24日
    瀏覽(24)
  • Java | Leetcode Java題解之第13題羅馬數(shù)字轉(zhuǎn)整數(shù)
  • 我在代碼隨想錄|寫代碼Day33 | 動態(tài)規(guī)劃| 路徑問題| 62.不同路徑,63. 不同路徑 II,343. 整數(shù)拆分

    我在代碼隨想錄|寫代碼Day33 | 動態(tài)規(guī)劃| 路徑問題| 62.不同路徑,63. 不同路徑 II,343. 整數(shù)拆分

    ??博客介紹`: 27dCnc ??系列專欄: 數(shù)據(jù)結(jié)構(gòu)與算法 算法入門 C++項(xiàng)目 ?? 當(dāng)前專欄: 算法入門 專題 : 數(shù)據(jù)結(jié)構(gòu)幫助小白快速入門算法 ???????????????????????? ☆*: .?. o(≧▽≦)o .?.:*☆ ??感謝大家點(diǎn)贊??收藏?評論?? 今日學(xué)習(xí)打卡 代碼隨想錄 - 動態(tài)規(guī)劃

    2024年03月11日
    瀏覽(97)
  • 【LeetCode題目詳解】1281題 整數(shù)的各位積和之差 面試題 01.01. 判定字符是否唯一 python題解(作業(yè)一二)

    【LeetCode題目詳解】1281題 整數(shù)的各位積和之差 面試題 01.01. 判定字符是否唯一 python題解(作業(yè)一二)

    問題描述: 1281.?整數(shù)的各位積和之差 給你一個(gè)整數(shù)?n,請你幫忙計(jì)算并返回該整數(shù)「各位數(shù)字之積」與「各位數(shù)字之和」的差。 示例 1: 輸入:n = 234 輸出:15 解釋: 各位數(shù)之積 = 2 * 3 * 4 = 24 各位數(shù)之和 = 2 + 3 + 4 = 9 結(jié)果 = 24 - 9 = 15 示例 2: 輸入:n = 4421 輸出:21 解釋:

    2024年02月10日
    瀏覽(20)
  • LeetCode第343場周賽

    2023.4.30LeetCode第343場周賽 根據(jù)題意模擬 使用哈希表記錄每個(gè)數(shù)出現(xiàn)的位置,再用m+n個(gè)集合記錄每一行和每一列被涂滿的格子數(shù),若某行或某列全部被涂滿則返回答案 BFS 首先將距離大于兩點(diǎn)的曼哈頓距離的特殊路徑去掉 每個(gè)點(diǎn)考慮經(jīng)過每個(gè)特殊路徑到達(dá),分成兩段,一段是當(dāng)

    2024年02月02日
    瀏覽(23)
  • LeetCode 周賽 343(2023/04/30)結(jié)合「下一個(gè)排列」的貪心構(gòu)造問題

    本文已收錄到 AndroidFamily,技術(shù)和職場問題,請關(guān)注公眾號 [彭旭銳] 提問。 大家好,我是小彭。 今天是五一假期的第二天,打周賽的人數(shù)比前一天的雙周賽多了,難道大家都只玩一天嗎?這場周賽是 LeetCode 第 343 場單周賽,如果不考慮第一題擺爛的翻譯,整體題目質(zhì)量還是

    2024年02月02日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包