Số PP

Đề bài

Mô tả

Xét một số nguyên dương và viết nó dưới dạng dãy chữ số s1s2…sk (với k là số chữ số, s1 là chữ số đầu tiên).

Số đó được gọi là số PP nếu với mọi vị trí i, tổng của chữ số ở vị trí i và chữ số ở vị trí đối xứng k−i+1 là một số nguyên tố, tức là si+sk−i+1 là số nguyên tố với mọi i.

Ví dụ, 125 không phải số PP vì s1+s3=1+5=6 không phải số nguyên tố (và s2+s2=2+2=4 cũng không phải).

Cho hai số nguyên l và r, hãy đếm xem có bao nhiêu số PP trong đoạn [l,r].

Dữ liệu vào

Một dòng chứa hai số nguyên l và r.

Dữ liệu ra

In ra một số nguyên là số lượng số PP trong đoạn [l,r].

Ràng buộc

  • 1<l<r<1015

Ví dụ

Input Output Giải thích
10 30 10 Các số PP là 11, 12, 14, 16, 20, 21, 23, 25, 29, 30 (đều có tổng hai chữ số là số nguyên tố). Ví dụ 13 không phải vì 1+3=4; 22 không phải vì 2+2=4.
100 200 4 Với số có 3 chữ số, chữ số giữa b ghép với chính nó nên cần b+b=2b nguyên tố, chỉ đạt khi b=1. Trong [100,200] chữ số đầu là 1, nên cần 1+c nguyên tố: được 111, 112, 114, 116.

Bình luận

  • skyvn97
    đã bình luận 3 months trước

    Video giải đề: https://youtu.be/RNI8rFTpDXM

    Lời giải và code mẫu có trong phần mô tả của video

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.47 awk 1.3.4 gcc 16.2.0 dotnet 10.0.402 g++ 16.2.0 g++-themis 16.2.0 g++17 16.2.0 g++20 16.2.0 g++23 16.2.0 clang++ 22.1.8 dmd 2.113.0 dart 3.13.6 gforth 0.7.3 gfortran 15.3.0 go 1.27.3 groovyc 5.1.3 javac 26.0.2.1 node 26.12.1 julia 1.13.2 kotlinc 2.4.21 lean 4.35.0 sbcl 2.2.9 lua 5.5.1 nim 2.2.12 fpc 3.2.2 fpc-themis 3.2.2 perl 5.42.3 php 8.5.12 pike 8.0 swipl 9.0.4 pypy3 7.3.23 python3 3.15.1 racket 8.7 ruby 4.0.8 rustc 1.99.1 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 swiftc 6.4.1 tclsh 8.6 bun 1.4.4 deno 2.9.8 v 0.5.2 zig 0.17.0