Leetcode的醜數問題

2021-09-12 04:07:54 字數 1445 閱讀 7428

所有大於1的自然數,都可以唯一分解成有限個素數的乘積。

263.醜數

編寫乙個程式判斷給定的數是否為醜數。

醜數就是只包含質因數2, 3, 5正整數

就是判斷該數是否可以寫成2的k次方 * 3的k1次方*5的k2次方的形式

分別把2,3,5這些因子除盡,剩下的是1說明該數就是......

class solution 

while(num % 3 == 0)

while(num % 5 == 0)

if(num == 1)

return true;

return false;

}};

264.醜數ii

編寫乙個程式,找出第n個醜數。

醜數就是只包含質因數2, 3, 5正整數

示例:

輸入:n = 10輸出:12解釋:1, 2, 3, 4, 5, 6, 8, 9, 10, 12是前 10 個醜數。
說明:

1是醜數。

n不超過1690。

class solution 

if(res[i] == res[three] * 3)

if(res[i] == res[five] * 5)

}return res[n - 1];

}};

313.超級醜數

編寫一段程式來查詢第n個超級醜數。

超級醜數是指其所有質因數都是長度為k的質數列表primes中的正整數。

示例:

輸入:n = 12,primes=[2,7,13,19]輸出:32解釋:給定長度為 4 的質數列表 primes = [2,7,13,19],前 12 個超級醜數序列為:[1,2,4,7,8,13,14,16,19,26,28,32] 。
說明:

class solution

for (int i = 0; i < primes.size(); i++)

}ans[k++] = min;

}return ans[n - 1];

}};

leetcode 醜數問題

263.醜數 class solution while n 3 0 while n 5 0 return n 1 劍指 offer 49.醜數 class solution int a new int n a 0 1 int index1 0 遍歷醜數的 2的佇列 int index2 0 遍歷 3...

leetcode 263 醜數(醜數II)

給了我們乙個醜數的概念,真是為了考驗我們什麼手段都能使出來。首先說一下第乙個題目,判斷乙個數是不是醜數,就是不斷地去除5 除3 除2就行了,當然除之前看看餘數是不是0,否則的話說明已經不能被這三個數整除了,直接結束 public boolean isugly int num return flag ...

leetcode超級醜數

1.n個指標 設primes.size n,則設定n個指標,初始為0,分別指向結果陣列中有資格與primes 0 primes n 1 相乘的元素的下標,取最小值,且最小值對應的指標的值加1,如下 class solution public int nthsuperuglynumber int n,...