描述
罗少很喜欢 2 的非负整数次幂,现在给你一个数,请问罗少喜不喜欢。
输入
第一行是一个正整数 T 代表测试案例的数量。(1 <= T <= 1000)
每组案例包含一个正整数 x。
对于 33% 的样例有 x < 2 ^ 31。
对于 66% 的样例有 x < 2 ^ 63。
对于 100% 的样例有 x < 2 ^ 64。
输出
对于每组样例,如果罗少喜欢输入的数字则输出 YES,否则输出 NO,然后换行。
样例输入
2
3
4
样例输出
NO
YES
#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
int T;
cin >> T;
while (T--)
{
unsigned long long int n;
cin >> n;
puts((n & -n) == n ? "YES" : "NO");
//puts()函数 输出字符串 自带换行
}
return 0;
}
//2的非负整数次幂的二进制除了开头为1其余都是0
//例如2^3==8 8的二进制为1000 2^4==16 16的二进制为10000