# Leetcode Power of Four problem solution

In this Leetcode Power of Four problem solution, you have given an integer n, return true if it is a power of four. Otherwise, return false. An integer n is a power of four, if there exists an integer x such that n == 4x.

## Problem solution in Python.

```def isPowerOfFour(self, num):
"""
:type num: int
:rtype: bool
"""

return num>0 and num&(num-1)==0 and len("{0:b}".format(num))%2==1
```

## Problem solution in Java.

```public boolean isPowerOfThree(int n) {
if(n==0){
return false;
}
while(n!=1){
if(n%3==0){
n/=3;
}
else{
break;
}
}
return n==1;
}
```

## Problem solution in C++.

```class Solution {
public:
bool isPowerOfFour(int num) {
if(num<=0) return false;
long product = pow(2,31);
int n = sqrt(num);
if(n*n!=num) return false;
return product%n==0;
}
};
```

## Problem solution in C.

```bool isPowerOfFour(int n)
{
if(n<=0)
return false;
if(n==1)
return true;
if( (__builtin_ctz(n)%2==0) && (__builtin_ctz(n)>0) && (__builtin_popcount(n)==1) )
return true;
return false;
}
```