Số nguyên tố đối xứng

Xem PDF



Thời gian:
Pypy 3 2.0s
Bộ nhớ:
Pypy 3 512M

Tác giả:
Dạng bài
Điểm: 900 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Một số nguyên tố \(p\) được gọi là số nguyên tố đối xứng nếu mang biểu diễn thập phân của nó viết theo thứ tự ngược lại, ta vẫn được một số nguyên tố. Ví dụ: \(79, 97, 991, 1999859\) là những số nguyên tố đối xứng.

Yêu cầu: Liệt kê các số nguyên tố đối xứng trong phạm vi từ \(1\) tới \(n\) theo thứ tự tăng dần

Input

  • Gồm một số nguyên dương \(n\le2000000\).

Output

  • Ghi các số nguyên tố tìm được theo thứ tự tăng dần cách nhau bởi dấu cách.

Example

Test 1

Input
100
Output
2 3 5 7 11 13 17 31 37 71 73 79 97

Bình luận

  • tranduyhieu123 5:30 p.m. 3 Tháng 3, 2025

    include <bits/stdc++.h>
    using namespace std;
    int kiem_tra(int n) {
    if (n < 2) {
    return 0;
    }
    if (n == 2) {
    return 1;
    }
    if (n % 2 == 0) {
    return 0;
    }

    int sqrt_n = (int) sqrt(n);
    for (int i = 3; i <= sqrt_n; i += 2)
        if (n % i == 0) return 0;
    return 1;
    

    }

    bool doi_xung(int n) {
    int dao = 0;
    while (n > 0) {
    dao = dao * 10 + n % 10;
    n /= 10;
    }
    return kiem_tra(dao);
    }

    int main() {
    int n;
    cin >> n;

    bool first = true;
    for (int i = 2; i <= n; ++i) {
        if (kiem_tra(i) && doi_xung(i)) {
            if (!first) cout << " ";
            cout << i;
            first = false;
        }
    }
    cout << "\n";
    return 0;
    

    }