学习C++从娃娃抓起!记录下在学而思小猴编程学习过程中的题目,记录每一个瞬间。侵权即删,谢谢支持!
附上汇总贴:小猴编程C++ | 汇总-CSDN博客
【题目描述】
如果一个正整数除了 1 和它本身之外,有且只有一个约数,则称此正整数是“美丽的”。
现在有 q 次询问,每次询问给定一个正整数 xi,请你判断 xi 是否为一个“美丽的数”,如果 xi 是美丽的数,则输出 Yes,否则输出 No。
【输入】
第一行,包含一个正整数 q。
接下来 q 行,每行包含一个正整数 xi,第 i 行的正整数为 xi。
【输出】
共 q 行,其中第 i 行输出对 xi 的判断结果,如果 xi 是美丽的数,则输出 Yes,否则输出 No。
【输入样例】
3
4
5
6
【输出样例】
Yes
No
No
【代码详解】
#include <bits/stdc++.h>
#include <cmath>
using namespace std;
bool check(long long n)
{
long long t = sqrt(n);
if (t * t != n) return false;
if (t<2) return false;
for (int i=2; i*i<=t; i++) {
if (t%i==0) return false;
}
return true;
}
int main()
{
int n;
cin >> n;
while (n--) {
long long m;
cin >> m;
if (check(m)) cout << "Yes" << endl;
else cout << "No" << endl;
}
return 0;
}
【运行结果】
3
4
Yes
5
No
6
No