---
title: 'LeetCode 231. Power of Two'
disqus: hackmd
---
# LeetCode 231. Power of Two
## Description
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
Input: n = 16
Output: true
Explanation: 2^4^ = 16
## Constraints
-2^31^ <= x <= 2^31^ - 1
## Answer
此題注意次方都是正數,故只考慮大於0的數。因2的次方在上只有一個bit有值,所以若將n對n-1取&,則必為0。若非0就不是2的次方。
```Cin=
// 2022_04_16
bool isPowerOfTwo(int n) {
return n>0 && !(n&(n-1));
}
```
## Link
https://leetcode.com/problems/power-of-two/
###### tags: `Leetcode`