trang chủ / bài tập / primepal

Số nguyên tố hay số đối xứng?

Đề bài

Mô tả

Một số nguyên dương được gọi là số đối xứng (palindrome) nếu biểu diễn thập phân của nó (không có số 0 vô nghĩa ở đầu) đọc từ trái sang phải giống hệt đọc từ phải sang trái. Ví dụ: 1, 7, 121, 1331 là các số đối xứng.

Với mỗi số nguyên dương n, đặt:

  • π(n) = số lượng số nguyên tố không lớn hơn n;
  • rub(n) = số lượng số đối xứng không lớn hơn n.

Cho một phân số A=pq. Hãy tìm giá trị n lớn nhất thỏa mãn:

π(n)A·rub(n).

Nếu tồn tại giá trị n như vậy thì in ra n lớn nhất. Ngược lại (không tồn tại giá trị lớn nhất), in ra dòng chữ:

Palindromic tree is better than splay tree

Dữ liệu vào

Một dòng gồm hai số nguyên dương pq: tử số và mẫu số của phân số A=pq.

Dữ liệu ra

In ra n lớn nhất thỏa mãn điều kiện, hoặc dòng chữ "Palindromic tree is better than splay tree" nếu không tồn tại.

Ràng buộc

  • 1p,q104

Ví dụ

Input Output Giải thích
1 1 40 A=1. Với mọi n40 ta có π(n)rub(n), còn tại n=41 thì π(41)=13>12=rub(41).
1 42 1 A=142 rất nhỏ. Chỉ n=1 thỏa (vì π(1)=0).
6 4 172 A=1.5. Giá trị n lớn nhất thỏa mãn là 172.

Bình luận

Không có bình luận tại thời điểm này.

gnatmake 12.2.0 a68g 3.1.2 nasm 2.16.1 as_x64 2.46 awk 1.3.4 gcc 16.1.0 csc 6.12.0.200 g++ 16.1.0 g++-themis 16.1.0 g++17 16.1.0 g++20 16.1.0 g++23 16.1.0 clang++ 22.1.6 dmd 2.112.0 dart 3.12.1 gforth 0.7.3 gfortran 12.2.0 go 1.26.3 groovyc 5.0.6 javac 25.0.3 node 26.2.0 kotlinc 2.3.21 sbcl 2.2.9 lua 5.4.8 nim 2.2.10 fpc 3.2.2 fpc-themis 3.2.2 perl 5.36.0 php 8.5.6 pike 8.0 pypy3 7.3.23 python3 3.14.5 racket 8.7 ruby 4.0.5 rustc 1.96.0 csc 5.3.0 ctoj-scratch 0.0.1 sed 4.9 tclsh 8.6 bun 1.3.14 deno 2.8.1 v 0.5.1 zig 0.16.0