題目: LeetCode - 342. Power of Four

題目說明

給一個整數,求此整數是否是 4 的次方數。

解題思路

一個整數若是 4 的次方數,必定會是 2 的次方數,所以先判斷是否為 2 的次方數再判斷是否為 4 的次方數即可。

參考解法

1
2
3
4
5
6
class Solution {
public:
bool isPowerOfFour(int num) {
return num > 0 && !(num & (num - 1)) && (num & 0x55555555) == num;
}
};