醜い数字I、精神的にタイトル。問題は、それが正の整数醜い数であるかどうかを判断するためのものです。定義された醜い数は、この数は3つだけの製品2,3,5を得ることが可能です。たとえば、
例1:
入力:6 出力:真の 説明:6 = 2×3例2:
入力:8 出力:真の 説明:8 = 2×2×2例3:
入力:14 出力:偽の 説明:14
それは別の素因数を含んでいるので醜いではありません7
。
それを行うための考え方に従って、それは2,3,5割り切れるかどうかを判断することができます。コードは以下の通りです
時間O(N)
スペースO(1)
1 / * * 2 * @param {数} NUM 3 * @return {ブール} 4 * / 5 VAR isUgly = 関数(NUM){ 6 場合(NUM === 1)を返す 真。 7 場合(NUMの=== 0)を返す 偽。 8 一方(NUM%2 === 0)NUM = Math.floor(NUM / 2 )。 9 一方(NUM%3 === 0)NUM = Math.floor(NUM / 3 )。 10 一方(NUM%5 === 0)NUM = Math.floor(NUM / 5 )。 11 リターンをnum === 1; 12 }。