示例1给定一个整数,写一个函数来判断它是否是 4 的幂次方。如果是,返回 true ;否则,返回 false 。
整数 n 是 4 的幂次方需满足:存在整数 x 使得 n == 4x
输入:n = 16 输出:true示例2
输入:n = 5 输出:false示例3
输入:n = 1 输出:true提示
- -231 <= n <= 231 - 1
public boolean isPowerOfFour(int n) { if (n == 1 || n == 4) return true; if (n < 4) return false; int a = (n - 1) & n; // 判定是否是2的幂 if (a == 0){ if (Math.sqrt(n) % 4 == 0) // 是2的幂,4^x 开方是 2^x return true; else return false; } else return false; }
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)