LeetCode 丑数
264. 丑数 II
给你一个整数 n
,请你找出并返回第 n
个 丑数 。
丑数 就是质因子只包含 2
、3
和 5
的正整数。
class Solution {
public int nthUglyNumber(int n) {
int[] dp = new int[n];
dp[0] = 1;
int a = 0;
int b = 0;
int c = 0;
for(int i = 1;i < n;i++){
int n2 = dp[a] * 2;
int n3 = dp[b] * 3;
int n5 = dp[c] * 5;
dp[i] = Math.min(Math.min(n2,n3),n5);
if(dp[i] == n2){
a++;
}
if(dp[i] == n3){
b++;
}
if(dp[i] == n5){
c++;
}
}
return dp[n - 1];
}
}