Leetcode Note: Go - Ugly Number
Ugly Number - LeetCode
https://leetcode.com/problems/ugly-number/
- Go 言語で取り組んだメモ
 
所感
- ugly number とは素因数が 2, 3, 5 のみの整数
- prime factor: 素因数
 
 - これを判定して ugly number なら true を返す関数を実装する
 
回答
My Python and Go Solution - LeetCode Discuss
https://leetcode.com/problems/ugly-number/discuss/971510/My-Python-and-Go-Solution
func isUgly(n int) bool {
    if n <= 0 {
        return false
    }
    for n != 1 {
        if n % 2 == 0 {
            n /= 2
        } else if n % 3 == 0 {
            n /= 3
        } else if n % 5 == 0 {
            n /= 5
        } else {
            return false
        }
    }
    return true
}- n が 1 以外ならループを回す
- 2, 3, 5 で余り無しの除算できるのであれば、できるだけやる
 - 除算が出来なければ Ugly Number では無いので return false
 
 - 除算が出来てループを抜けたら 2, 3, 5 で除算しきれたということなので Ugly Number と判定して return true