class Solution {
public int numSquares(int n) {
//dp[0]=0
int[] dp = new int[n + 1];
for (int i = 1; i <= n; i ++) {
int minNum = Integer.MAX_VALUE;
//dp转移
for (int j = 1; j * j <= i; j++) {
minNum = Math.min(minNum, dp[i - j * j]);
}
dp[i] = minNum + 1;
}
return dp[n];
}
}
完全平方数
最新推荐文章于 2024-07-19 19:06:35 发布