Codeforces Round 697 (Div. 3) A. Odd Divisor

给定一个正整数 \(n\) ,询问是否存在一个 \(> 1\) 的奇数因子。

在唯一分解定理下观察 \(n\) ,发现若存在除 \(2\) 以外的质因子,则 \(n\) 存在 \(> 1\) 的奇数因子。

换句话说 \(n\) 不是二次幂形式则存在 \(> 1\) 的奇数因子。

view
#include <bits/stdc++.h>
void solve(){
	long long n; std::cin >> n;
	std::cout << (n != (n & (-n)) ? "YES" : "NO") << '\n';
}
int main() {
	int _ = 1; std::cin >> _;
	while (_--) {solve();}
	return 0;
}
posted @ 2023-10-16 20:18  zsxuan  阅读(1)  评论(0编辑  收藏  举报