题目: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
. For example, 6, 8
are ugly while 14
is not ugly since it includes another prime factor 7
.
Note that 1
is typically treated as an ugly number.
题目解答:这个题目用来判断当前的这个给定num是否是丑数,丑数的规则已经给定:(1)正整数;(2)素数因子只有2,3,5;(3)1也是丑数之一。
代码如下:
class Solution {
public: bool isUgly(int num) { if(num <= 0) return false; if(num == 1) return true; while(num % 2 == 0) { num /= 2; } while(num % 3 == 0) { num /= 3; } while(num % 5 == 0) { num /= 5; } if(num == 1) { return true; } return false; }};