[DHBB24 - CTP - 11] Bài 3: Xâu Fibonacci

Xem dạng PDF

Gửi bài giải

Điểm: 80,00 (OI)
Giới hạn thời gian: 1.0s
Giới hạn bộ nhớ: 1G
Input: stdin
Output: stdout

Dạng bài
Ngôn ngữ cho phép
C, C++, Java, Pascal, PyPy, Python, Scratch, TEXT

Trong trường hợp đề bài hiển thị không chính xác, bạn có thể tải đề bài tại đây: Đề bài

Dãy số Fibonacci được định nghĩa như sau:

  • ~F(0) = 0~
  • ~F(1) = 1~
  • ~F(i) = F(i-2) + F(i-1)~ với ~i \ge 2~.

Khánh cài đặt một chương trình để tính số Fibonacci, tuy nhiên do để sai kiểu dữ liệu là xâu nên kết quả mà Khánh tính được lại là các xâu thay vì các số trong dãy Fibonacci. Cụ thể:

  • ~F(0) = "0"~
  • ~F(1) = "1"~
  • ~F(2) = "01"~
  • ~F(3) = "101"~
  • ~F(4) = "01101"~

Mặc dù tính sai nhưng xâu thu được khá thú vị, vì vậy Khánh quyết định tính mảng hậu tố của các xâu nhận được. Mảng hậu tố của một xâu ~s~ được định nghĩa là dãy các hậu tố của ~s~ được sắp xếp tăng dần theo thứ tự từ điển. Ví dụ, với ~F(4) = "01101"~, mảng hậu tố của ~F(4)~ là dãy “01”, “01101”, “1”, “101”, “1101”.

Đánh thứ tự trong mảng hậu tố từ 1. Khánh cho bạn bộ ba số ~n, m, k~ và đố bạn tìm ra ~m~ kí tự đầu tiên của phần tử thứ ~k~ trong mảng hậu tố của xâu ~F(n)~. Nếu có ít hơn ~m~ kí tự trong phần tử thứ ~k~ thì bạn cần in ra cả phần tử này.

Yêu cầu: Bạn hãy viết chương trình giải quyết câu đố của Khánh.

Input

  • Gồm một dòng duy nhất chứa ba số nguyên ~n, m, k~ (~1 \le n, m \le 200; 1 \le k \le 10^{18}~).
  • Dữ liệu luôn đảm bảo ~k~ không vượt quá độ dài của xâu ~F(n)~.

Output

  • Ghi ra duy nhất ~m~ kí tự đầu tiên của phần tử thứ ~k~ trong mảng hậu tố của ~F(n)~ hoặc in ra cả phần tử thứ ~k~ nếu độ dài của nó ít hơn ~m~.

Sample Input 1

4 5 3

Sample Output 1

110

Bình luận

Hãy đọc nội quy trước khi bình luận.


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