trang chủ / đề bài / riddlestr

Câu đố của Nephren

Đề bài

Mô tả

Xét một dãy vô hạn các xâu f0,f1,f2,…

Xâu f0 là:

What are you doing at the end of the world? Are you busy? Will you save us?

Với mọi i≥1, xâu fi được tạo ra bằng cách ghép nối năm phần sau theo đúng thứ tự (giữ nguyên mọi dấu cách và dấu nháy kép):

What are you doing while sending "

rồi đến fi−1, rồi đến

"? Are you busy? Will you send "

rồi lại đến fi−1, và cuối cùng là

"?

Chẳng hạn f1 là:

What are you doing while sending "What are you doing at the end of the world? Are you busy? Will you save us?"? Are you busy? Will you send "What are you doing at the end of the world? Are you busy? Will you save us?"?

Các xâu fi chỉ gồm chữ cái, dấu hỏi, dấu nháy kép và dấu cách.

Cho q truy vấn, mỗi truy vấn gồm hai số n và k. Với mỗi truy vấn, hãy xác định ký tự thứ k của xâu fn (các ký tự được đánh chỉ số bắt đầu từ 1). Nếu fn có ít hơn k ký tự thì đáp án của truy vấn đó là dấu chấm.

Dữ liệu vào

  • Dòng đầu tiên chứa một số nguyên q là số truy vấn.
  • q dòng tiếp theo, dòng thứ i chứa hai số nguyên n và k mô tả truy vấn thứ i.

Dữ liệu ra

In ra một dòng duy nhất gồm q ký tự, trong đó ký tự thứ i là đáp án của truy vấn thứ i.

Ràng buộc

  • 1≤q≤10
  • 0≤n≤105
  • 1≤k≤1018

Ví dụ

Input Output Giải thích
3
1 1
1 2
1 111111111111
Wh. f1 bắt đầu bằng What are you doing... nên ký tự thứ 1 là W, ký tự thứ 2 là h. Xâu f1 chỉ dài 218 ký tự, nhỏ hơn 111111111111, nên truy vấn thứ ba trả về dấu chấm.
5
0 69
1 194
1 139
0 47
1 66
abdef Năm truy vấn lần lượt lấy ký tự thứ 69 của f0 (là a), thứ 194 của f1 (là b), thứ 139 của f1 (là d), thứ 47 của f0 (là e) và thứ 66 của f1 (là f).
10
4 1825
3 75
3 530
4 1829
4 1651
3 187
4 584
4 255
4 774
2 474
Areyoubusy Mười ký tự lấy được ghép lại thành Areyoubusy. Lưu ý ký tự thứ ba của kết quả là chữ e lấy tại vị trí 530 của f3, còn dấu cách hay dấu nháy kép cũng là những ký tự hợp lệ có thể xuất hiện trong đáp án.

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