#include <bits/stdc++.h>usingnamespacestd;
constint maxn = 1e7+5;
bool np[maxn]{true,true};
vector<int> prime;
int main()
{
int n, m, x;
cin >> n >> m;
for (int i = 2; i <= n; ++i)
{
if (!np[i]) prime.push_back(i);
for (int j = 0; j < prime.size() && i*prime[j] <= n; ++j)
{
np[i*prime[j]] = true;
if (i % prime[j] == 0) break;
}
}
for (int i = 1; i <= m; ++i)
{
scanf("%d", &x);
printf("%s\n", np[x] ? "No" : "Yes");
}
return0;
}
C代码#include &lt;stdio.h&gt;#include &lt;stdbool.h&gt;bool flag[10001] = {0};int p[10001] = {0};int main(){ int i, n, cnt = 0, j; scanf("%d", &amp;n); for (i = 2; i &lt;= n; ++i...