C/C++教程

codeforces1475A

本文主要是介绍codeforces1475A,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

根据算术基本定理推出(因为唯一一个偶素数是二):如果一个数n是2的幂,则该数无奇数因子。

可用n&(n-1)来判断,因为2的幂只在二进制的某一位有值,而(n-1)在除了该位的其他位有值

所以如果该数是2的幂,n&(n-1)=0

#include<iostream>
#include<cmath>
#define int long long
using namespace std;
signed main(){
	int t;
	cin>>t;
	while(t--){
		int n;
		cin>>n;
		if(n&(n-1))
			cout<<"YES"<<endl;
		else
			cout<<"NO"<<endl;
	}
	return 0;
}
这篇关于codeforces1475A的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!