Welcome to Subscribe On Youtube
Question
Formatted question description: https://leetcode.ca/all/263.html
263 Ugly Number
Write a program to check whether a given number is an ugly number.
Ugly numbers are positive numbers whose prime factors only include 2, 3, 5.
Example 1:
Input: 6
Output: true
Explanation: 6 = 2 × 3
Example 2:
Input: 8
Output: true
Explanation: 8 = 2 × 2 × 2
Example 3:
Input: 14
Output: false
Explanation: 14 is not ugly since it includes another prime factor 7.
Note:
1 is typically treated as an ugly number.
Input is within the 32-bit signed integer range: [−231, 231 − 1].
@tag-heap
Algorithm
Keep being devided by these prime numbers, if the remaining number is 1, it is an ugly number.
Code
-
public class Ugly_Number { class Solution { public boolean isUgly(int num) { if(num == 0) { return false; } while( num % 2 == 0) { num /=2; } while( num % 3 == 0) { num /=3; } while( num % 5 == 0) { num /=5; } return num == 1; } } } ############ class Solution { public boolean isUgly(int n) { 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 < 1: return False for x in [2, 3, 5]: while n % x == 0: n //= x return n == 1 ############ class Solution(object): def isUgly(self, n): """ :type num: int :rtype: bool """ if n <= 0: return False while n % 2 == 0 or n % 3 == 0 or n % 5 == 0: if n % 2 == 0: n /= 2 if n % 3 == 0: n /= 3 if n % 5 == 0: n /= 5 if n == 1: return True return False
-
class Solution { public: bool isUgly(int n) { 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; } };
-
func isUgly(n int) bool { if n < 1 { return false } for _, x := range []int{2, 3, 5} { for n%x == 0 { n /= x } } return n == 1 }
-
/** * @param {number} n * @return {boolean} */ var isUgly = function (n) { 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 { /** * @param Integer $n * @return Boolean */ function isUgly($n) { while ($n) { if ($n % 2 == 0) $n = $n / 2; else if ($n % 3 == 0) $n = $n / 3; else if ($n % 5 == 0) $n = $n / 5; else break; } return $n == 1; } }