题解 | #素数#素数筛选法
素数
https://www.nowcoder.com/practice/7f4be54b37a04fdaa4ee545819151114
#include <iostream> #include <string> #include <vector> #include <algorithm> #include <stack> #include <map> using namespace std; bool isprime[10005]; //isprime[i] 表示i这个数是不是素数 int main() { int n; while (scanf("%d", &n) != EOF) { for (int i = 0; i < 10005; i++) { //初始化 isprime[i] = true; } for (int i = 2; i <= 10000; i++) { for (int j = i * i; j <= 10000; j += i) { isprime[j] = false; } } bool ischeck = true; for (int i = 2; i < n; i++) { if (isprime[i] == true && i % 10 == 1) { printf("%d ", i); ischeck = false; } } if (ischeck) { printf("-1\n"); } else { printf("\n"); } } return 0; }