素数是大于等于2的仅能被自身及1整除的数
#include <cstdio> #include <vector> using namespace std; // 素数是只能被自己和1整除的数,提前算出25个素数 int main() { vector<int> vec; int a; while (scanf("%d", &a) != EOF) { for (int idx = 2; idx < a; idx++) { bool flag = true; for (int i = 2; i < idx; i++) { if (idx % i == 0) { flag = false; } } if (flag && (idx % 10 == 1)) { vec.push_back(idx); } } if (!vec.empty()) { for (int i = 0; i < vec.size(); i++) { printf("%d ", vec[i]); } printf("\n"); } else { printf("-1\n"); } } return 0; }