Given an integer (signed 32 bits), write a function to check whether it is a power of 4.
Example:
Given num = 16, return true. Given num = 5, return false.
Follow up: Could you solve it without loops/recursion?
Credits:
Special thanks to @yukuairoy for adding this problem and creating all test cases.
Subscribe to see which companies asked this question
class Solution {
public:
bool isPowerOfFour(int num) {
if(num < 1) return false;
if(num == 1 || num == 4) return true;
if(num%4 > 0 && num%4 < 4) return false;
return isPowerOfFour(num/4);
}
}
本文介绍了一个函数,用于检查一个给定的32位带符号整数是否为4的幂次。通过递归的方式实现了这一功能,并提供了一个示例:当输入为16时返回真,输入为5时返回假。
748

被折叠的 条评论
为什么被折叠?



