LeetCode:Ugly Number - 醜數1:判斷指定數字是否爲醜數

一、題目名稱java

Ugly Number(醜數1:判斷指定數字是否爲醜數).net

二、題目地址code

https://leetcode.com/problems/ugly-numberblog

三、題目內容leetcode

英文:Write a program to check whether a given number is an ugly number.開發

中文:寫程序判斷指定數字是否爲醜數get

說明:醜數具備以下特徵:1是醜數,醜數能夠表示爲有限個二、三、5的乘積it

注意:本題的目標不是「判斷第N個醜數」,關於「判斷第N個醜數」,請參考Ugly Number II(LeetCode #264)io

四、解題方法class

根據醜數的定義,能夠經過以下方法判斷一個數字n是否爲醜數:能夠試着用二、三、5不斷整除n,當n不能再被二、三、5整除時,判斷n是否等於1,等於1則指定的數字是醜數(返回真),不然不是(返回假)。

Java代碼以下:

/**
 * 功能說明:LeetCode 263 - Ugly Number
 * 開發人員:Tsybius2014
 * 開發時間:2015年8月23日
 */
public class Solution {
    
    /**
     * 判斷數字是否爲醜數
     * @param num 被判斷數字
     * @return true:醜數,false:非醜數
     */
    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;
        
        if (num == 1) {
            return true;
        } else {
            return false;
        }
    }
}

END

相關文章
相關標籤/搜索