trang chủ / đề bài / hcm_tst_22_d

Tìm số nguyên tố

Đề bài

Mô tả

Bình vừa được học về số nguyên tố và rất thích bài học này. Như bạn đã biết, số nguyên tố là số nguyên dương lớn hơn 1, chỉ có hai ước là 1 và chính nó. Bình miệt mài ghép các số nguyên tố bắt đầu từ 2, theo thứ tự tăng dần (viết liền các số 2,3,5,7,11,13,… thành một dãy chữ số 235711131719…). Kết quả Bình có được sau khi thực hiện công việc trên là một số nguyên M. Bình tự hỏi không biết mình có bỏ sót một số nguyên tố nào trong quá trình trên.

Yêu cầu: Cho trước số nguyên M, viết chương trình kiểm tra nếu M được tạo ra bằng việc ghép các số nguyên tố liên tiếp bắt đầu từ 2 thì xuất ra số nguyên tố cuối cùng được ghép vào M. Nếu M không được tạo ra theo cách mô tả ở trên thì xuất ra −1.

Số nguyên tố cuối cùng phải được ghép đầy đủ: nếu M dừng giữa chừng các chữ số của một số nguyên tố thì M không được tạo ra theo cách trên.

Dữ liệu vào

Một dòng gồm số nguyên dương M (không có chữ số 0 ở đầu).

Dữ liệu ra

In ra số nguyên tố cuối cùng được ghép vào M. Nếu M không được tạo ra bằng cách ghép các số nguyên tố liên tiếp bắt đầu từ 2 thì in ra −1.

Ràng buộc

  • M có không quá 500000 chữ số.

Subtasks

  • Subtask 1 (30% số điểm): M có không quá 26 chữ số.
  • Subtask 2 (20% số điểm): M có không quá 500 chữ số.
  • Subtask 3 (50% số điểm): M có không quá 500000 chữ số.

Ví dụ

Input Output Giải thích
23571113 13 M là 2,3,5,7,11,13 viết liền nhau.
23571117 -1 Sau 2,3,5,7,11 phải là 13, không phải 17 (đã bỏ sót 13).
2357111 -1 M dừng sau chữ số đầu tiên của 13, số 13 chưa được ghép đầy đủ.

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.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