To Be Developer

[LeetCode] 342. Power of Four (GoLang, Python) 본문

알고리즘/LeetCode

[LeetCode] 342. Power of Four (GoLang, Python)

Jeff Hwang 2019. 3. 30. 03:22

 

https://leetcode.com/problems/power-of-four/

불러오는 중입니다...

 

[Go-Lang 풀이]

package main

// 메인 함수
func main() {
    println(isPowerOfFour(4))
}

func isPowerOfFour(num int) bool {
    // num > 4 일 때까지 반복
    for num > 4 {
        // 4로 나눈 나머지가 0 이 아닌 경우 return false
        if num%4 != 0 {
            return false
        }
        // num 을 4로 나누어준다.
        num /= 4
    }
    // 반복문이 종료되면 num 이 1 or 4 이면 true 그렇지 않으면 false
    if num == 1 || num == 4 {
        return true
    } else {
        return false
    }
}

[Python 풀이]

class Solution(object):
    def isPowerOfFour(self, num):

        while num>4 :
            if num % 4 != 0:
                return False

            num /= 4

        return num in (1, 4)


if __name__ == "__main__":
    sl = Solution().isPowerOfFour(64)
    print(sl)