foolish fly fox's blog

--Stay hungry, stay foolish.
--Forever young, forever weep.



博客主页为:https://foolishflyfox.github.io/CsLearnNote/

263. Ugly Number

https://leetcode.com/problems/ugly-number/description/

Description

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. 1 is typically treated as an ugly number.
  2. Input is within the 32-bit signed integer range: [231,2311][-2^{31}, 2^{31}-1].

Solution

class Solution:
    def isUgly(self, num):
        """
        :type num: int
        :rtype: bool
        """
        for factor in (2, 3, 5):
            while num!=0 and num%factor==0:
                num //= factor
        return num==1