6/3 每日一題(不能單純是2、3、5的倍數)
An ugly number is a positive integer whose prime factors are limited to 2, 3, and 5.
Given an integer n, return true if n is an ugly number.
Example 1:
Input: n = 6 Output: true Explanation: 6 = 2 × 3
Example 2:
Input: n = 1 Output: true Explanation: 1 has no prime factors, therefore all of its prime factors are limited to 2, 3, and 5.
Example 3:
Input: n = 14 Output: false Explanation: 14 is not ugly since it includes the prime factor 7.
Constraints:
-231 <= n <= 231 - 1
class Solution:
def isUgly(self, n: int) -> bool:
if n<1:
return False
while n%2==0:
n //= 2
while n%3==0:
n //=3
while n%5 ==0:
n//=5
return n == 1
-----參考解答
class Solution:
def isUgly(self, n: int) -> bool:
if n <= 0: return False
for i in [2,3,5] :
while n % i==0 :
n = n//i
return n==1
-------------------------class Solution:
def isUgly(self, n: int) -> bool:
if n==0:
return 0
for i in 2,3,5:
while n%i==0:
n//=i
return n==1

0 個意見:
張貼留言
訂閱 張貼留言 [Atom]
<< 首頁