[Vũng Tàu - TS10 - 2025] Bài 2: Số siêu nguyên tố

Xem dạng PDF

Gửi bài giải

Điểm: 16,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Output Only, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài


Bình luận

Hãy đọc nội quy trước khi bình luận.



  • 0
    DuyQT1510  đã bình luận lúc 17, Tháng 9, 2026, 13:26

    include <bits/stdc++.h>

    using namespace std;

    bool p(long long n) { if (n < 2) return 0; for (long long i = 2; i * i <= n; ++i) if (n % i == 0) return 0; return 1; }

    int main() { long long a, b; cin >> a >> b;

    string d = "2357";
    vector&lt;long long> r, q = {0}; // queue chứa số đang xây
    
    for (int len = 1; len <= 8; ++len) {
        vector&lt;long long> nq;
        for (long long x : q) {
            for (char c : d) {
                long long y = x * 10 + (c - '0');
                if (y > b) continue;
                nq.push_back(y);
                if (y >= a && p(y)) {
                    int s = 0, t = y;
                    while (t) s += t % 10, t /= 10;
                    if (p(s)) r.push_back(y);
                }
            }
        }
        q = nq;
    }
    
    sort(r.begin(), r.end());
    cout << r.size() << '\n';
    for (auto x : r) cout << x << ' ';
    

    }