給定一個整型數,寫一個函數來決定它是否是2的冪。
Given an integer, write a function to determine if it is a power of two.
詳情請看這篇文章:LeetCode 326 Power of Three(3的冪)(遞歸、Log函數)
看題號,326是本題的加強版,326是要求不能用循環或遞歸的……大家可以去看看上面那篇文章。
本題就直接貼我的代碼了……
class Solution {
public:
bool isPowerOfTwo(int n) {
double logAns = log10(n) / log10(2);
return (logAns - int(logAns) == 0) ? true : false;
}
};