Recca Chao 的 gitHub page

推廣網站開發,包含 Laravel 和 Kotlin 後端撰寫、自動化測試、讀書心得等。Taiwan Kotlin User Group 管理員。

View on GitHub

Kotlin Leetcode - 342. Power of Four

題目連接

class Solution {
    fun isPowerOfFour(n: Int): Boolean {
    }
}

解題思路

4 不是質數,也不方便使用位元計算

所以我們得換個思路

我們可以利用對數的特性

當某個數是 4 的冪次

那麼該數取 4 的對數,必定是整數

Kotlin 參考解答

點擊展開解答
import kotlin.math.ceil
import kotlin.math.floor
import kotlin.math.log

class Solution {
    fun isPowerOfFour(n: Int): Boolean {
        if (n <= 0) {
            return false
        }
        return (floor(log(n.toDouble(), 4.0)) == ceil(log(n.toDouble(), 4.0)))
    }
}

回到 leetcode 列表