确定一个数字是否为-2-的幂
目录
确定一个数字是否为 2 的幂
#include <iostream>
using namespace std;
bool er(long long n)
{
if(n<=0)
{
return false;
}
return (n&(n-1))==0;
}
/*
bool er(long long n)
{
if(n<=0)
{
return false;
}
while(n>1)
{
if(n%2!=0)
{
return false;}
n/=2;
}
return true;
}
*/
int main()
{
// 请在此输入您的代码
long long n;
cin>>n;
if(er(n))
{
cout<<"YES";
}
else{
cout<<"NO";
}
return 0;
}
确定一个数字是否为 2 的幂
题目描述
实现一个算法确定一个数字 NN 是否为 2 的幂。
若该数字是 2 的幂则输出
YES
,否则输出
NO
。
输入描述
输入一个数字 N (1≤N≤108)N (1≤N≤108)。
输出描述
输出一行,若 NN 是 2 的幂则输出
YES
,否则输出
NO
。
输入输出样例
示例
输入
8
输出
YES