Write a program to check whether a given number was an ugly number.
Ugly numbers is positive numbers whose prime factors only include 2, 3, 5
. For example, was ugly while was not 6, 8
14
ugly since it includes another prime factor 7
.
Note that's 1
typically treated as an ugly number.
The topic is very good to understand, is to judge a number is not ugly numbers, that is, a number of prime factor only 2,3,5, as long as there are other prime number factor is not ugly numbers, then constantly divided by 2,3,5 these prime numbers, if there is the remaining (that the result is not 1 then it must have other prime number factor)
classSolution { Public: BOOLisugly (intnum) { if(num==1) { return true; } Else if(num<1) { return false; } Else { while(num%2==0) {num=num/2; } while(num%3==0) {num=num/3; } while(num%5==0) {num=num/5; } if(num==1) { return true; } Else { return false; } } }};
Leetcode 263-ugly Number