[DP]279. Perfect Squares

279. Perfect Squares

完美平方數都可以看做一個普通數加上一個完美平方數

如圖所示,紅色部分表示平方數,所有的完美平方數都可以看做一個普通數加上一個完美平方數,那么遞推式就變?yōu)榱耍篸p[i + j * j] = Math.min(dp[i] + 1, dp[i + j * j])。

class Solution {
    public int numSquares(int n) {
        int[] dp = new int[n+1];
        for(int i = 1; i<=n ;i++){
            dp[i] = i; // 最多都由1組成
            for(int j = 1; j*j<=i; j++){
                dp[i] = Math.min(dp[i], dp[i-j*j]+1);
            }
        }
        return dp[n];
    }
}
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

  • 背景 一年多以前我在知乎上答了有關LeetCode的問題, 分享了一些自己做題目的經驗。 張土汪:刷leetcod...
    土汪閱讀 12,927評論 0 33
  • 回溯算法 回溯法:也稱為試探法,它并不考慮問題規(guī)模的大小,而是從問題的最明顯的最小規(guī)模開始逐步求解出可能的答案,并...
    fredal閱讀 14,015評論 0 89
  • 動態(tài)規(guī)劃(Dynamic Programming) 本文包括: 動態(tài)規(guī)劃定義 狀態(tài)轉移方程 動態(tài)規(guī)劃算法步驟 最長...
    廖少少閱讀 3,659評論 0 18
  • 目錄 53、max subarray 62、unique paths 63、unique path2 70、cli...
    lifesmily閱讀 323評論 0 0
  • 坐在地鐵上,整理一下思路。許久不曾這樣感動過,不是因為干活累,不是因為老板給的工錢少,也不是因為我餓。那個小姑...
    浪子重閱讀 396評論 0 0

友情鏈接更多精彩內容