leetcode-279. 完全平方数

class Solution { public: int numSquares(int n) { vector<int> dp(n+1,0); for(int i = 1; i <= n;i++){ dp[i] = i; //最差情况,有i个1组成, for(int j = 1; i-j*j>=0; j++){ // dp[i] 要么是最差情况,要么是dp[i-j*j]+1, // 因为i-j*j意味着i里面已经有一个完全平方了,可以由dp[i-j*j]+1组成。 dp[i] = min(dp[i], dp[i-j*j]+1); } } return dp[n]; } };

浙公网安备 33010602011771号