#include <bits/stdc++.h>
using namespace std;
bool zs(long long n) {
for (int i = 2; i * i < n; i++)
if (n % i == 0)
return 0;
return 1;
}
int main() {
long long t;
cin >> t;
long long x[t];
for (long long i = 0; i < t; i++) cin >> x[i];
for (long long i = 0; i < t; i++) {
if (zs(x[i]))
cout << "Y\n";
else
cout << "N\n";
}
return 0;
}
啊,测试了好多遍的代码,神奇数据硬是对#10啊!!!求看看~(无助胆小的我)
共 3 条回复
1 是质数? 0 是质数? -1 TM是质数? 前面的真**
#include <bits/stdc++.h> using namespace std; bool zs(long long n) { if (n < 2) return 0; for (int i = 2; i * i < n; i++) if (n % i == 0) return 0; return 1; } int main() { long long t; cin >> t; long long x[t]; for (long long i = 0; i < t; i++) cin >> x[i]; for (long long i = 0; i < t; i++) { if (zs(x[i])) cout << "Y\n"; else cout << "N\n"; } return 0; }
所以:
如果输入是1的话...