Power Of Two Problem


Description

LeetCode Problem 231.

Given an integer n, return true if it is a power of two. Otherwise, return false.

An integer n is a power of two, if there exists an integer x such that n == 2^x.

Example 1:

1
2
3
Input: n = 1
Output: true
Explanation: 2^0 = 1

Example 2:

1
2
3
Input: n = 16
Output: true
Explanation: 2^4 = 16

Example 3:

1
2
Input: n = 3
Output: false

Example 4:

1
2
Input: n = 4
Output: true

Example 5:

1
2
Input: n = 5
Output: false

Constraints:

  • -2^31 <= n <= 2^31 - 1


Sample C++ Code

1
2
3
4
5
6
7
8
9
10
11
12
13
class Solution {
public:
    bool isPowerOfTwo(int n) {
        if (n <= 0)
            return false;
        while (n > 1) {
            if (n & 1 == 1)
                return false;
            n = n >> 1;
        }
        return true;
    }
};




Related Posts

Bulb Switcher II Problem

LeetCode 672. There is a room with n bulbs labeled...

Binary Number With Alternating Bits Problem

LeetCode 693. Given a positive integer, check whether it has...

Total Hamming Distance Problem

LeetCode 477. The Hamming distance between two integers is the...

Number Complement Problem

LeetCode 476. The complement of an integer is the integer...

Hamming Distance Problem

LeetCode 461. The Hamming distance between two integers is the...

Convert A Number To Hexadecimal Problem

LeetCode 405. Given an integer num, return a string representing...