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 列表