1 条题解
-
0
#include <iostream> #include <cmath> using namespace std; // ?????????? bool isPrime(int num) { if (num < 2) return false; for (int i = 2; i <= sqrt(num); i++) { if (num % i == 0) return false; } return true; } // ???????? void generatePrimeRibs(int current, int length, int targetLength) { if (length == targetLength) { if (isPrime(current)) { cout << current << endl; } return; } // ??????????? 1?3?7?9 for (int digit = 1; digit <= 9; digit += 2) { int newNum = current * 10 + digit; if (isPrime(newNum)) { generatePrimeRibs(newNum, length + 1, targetLength); } } } int main() { int N; cin >> N; // ?????,??????? 2?3?5?7 int primes[] = {2, 3, 5, 7}; for (int i = 0; i < 4; i++) { generatePrimeRibs(primes[i], 1, N); } return 0; }
- 1
信息
- ID
- 5276
- 时间
- 1000ms
- 内存
- 125MiB
- 难度
- 2
- 标签
- 递交数
- 10
- 已通过
- 7
- 上传者