本文主要是介绍LeetCode *** 279. Perfect Squares,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目:
Given a positive integer n, find the least number of perfect square numbers (for example, 1, 4, 9, 16, ...
) which sum to n.
For example, given n = 12
, return 3
because 12 = 4 + 4 + 4
; given n = 13
, return 2
because 13 = 4 + 9
.
分析:
dp。
代码:
class Solution {
public:int numSquares(int n) {int dp[n+1];dp[0]=0;for(int i=1;i<=n;++i){dp[i]=INT_MAX;for(int j=1;j*j<=i;++j)dp[i]=min(dp[i],dp[i-j*j]+1);}return dp[n];}
};
这篇关于LeetCode *** 279. Perfect Squares的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!