문제 난이도 : Easy
문제 유형 : Data Structures - Queue and BFS
문제 설명 간략 :
integer n이 주어지고 제곱의 합이 n과 같아지는 최솟값을 구하여라.
제약사항
- 1 <= n <= 104^
자바 풀이
class Solution {
public int numSquares(int n) {
int[] memo = new int[n+1];
Arrays.fill(memo, Integer.MAX_VALUE);
memo[0] = 0;
for(int i = 1; i <= n; i++) {
for(int j = 1; j*j <= i; j++) {
memo[i] = Math.min(memo[i-j*j]+1, memo[i]);
}
}
return memo[n];
}
}
출처