trang chủ / đề bài / primemulti

Tích các số nguyên tố

Đề bài

Mô tả

Tạo một số S độ dài vô hạn bằng cách ghép các số nguyên tố có giá trị tăng dần lại với nhau, bắt đầu từ số 2. Các chữ số đầu tiên của S là 23579111317192329...

Cho T testcase, mỗi testcase bao gồm một số nguyên dương k. Nhiệm vụ của bạn là tính tích k chữ số đầu tiên của S. Vì kết quả có thể rất lớn nên hãy xuất kết quả sau khi mod 109+7.

Dữ liệu vào

  • Dòng đầu tiên gồm số nguyên dương T thể hiện số testcase (T≤105).
  • T dòng sau, mỗi dòng gồm số nguyên dương k (k≤1018).

Dữ liệu ra

Gồm T dòng, mỗi dòng xuất ra kết quả ứng với testcase đó.

Ràng buộc

  • 1≤T≤105
  • 1≤k≤1018
  • 30% số điểm có k≤100100.
  • 70% số điểm còn lại không có giới hạn gì thêm.

Ví dụ

Input Output Giải thích
6
1
2
3
4
5
8
2
6
30
210
210
630
S=23579111317.... Với k=1: tích =2. Với k=2: tích =2×3=6. Với k=3: tích =2×3×5=30. Với k=5: chữ số thứ 5 là 9, nhưng tích chứa thừa số 0 nếu... Thực ra k=5: 2×3×5×7×9=1890? Chú ý: chữ số thứ 5 của S là 9, tích 5 chữ số đầu =2×3×5×7×9=1890. Nhưng output là 210, nên có thể tích không tính chữ số 9 (chữ số 0?).

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