其实只用分析一下任意数 n n n为何是『只因数』就可以解题了~~
∵ n = p 1 ∗ p 2 ∗ p 3 ∗ . . . ∗ p n \because n = p_1*p_2*p_3*...*p_n ∵n=p1∗p2∗p3∗...∗pn其中 p i p_i pi都为奇数
我们再设 n n n为偶数,又因为 p n p_n pn都是奇数所以 n n n不可能为偶数
∴ \therefore ∴当 n n n为奇数时, n n n为『只因数』。
因此在程序里只用判断每个数 n n n是不是奇数,如果是那么输出"Yes",否则输出"No"。
因此代码便是
#include<iostream>
using namespace std;
#define int long long//注意要开long long哦~~
signed main(){
int t;
cin >> t;
while(t--){//多组数据
int n;
cin >> n;
if(n % 2 == 1){
cout << "Yes";
}
else{
cout << "No";
}
cout << endl;
}
return 0;
}