Xâu lý thú 1

Xem PDF

Nộp bài


Điểm: 15 (thành phần)
Thời gian: 1.0s
Bộ nhớ: 512M

Tác giả:
Dạng bài

Khánh Dung có một dãy số nguyên không âm \(\delta=(\delta_0, \delta_1,...,\delta_{n-1})\) thỏa mãn \(|\delta_i-\delta_{i-1}|\leq 1\) với mọi \(1\leq i < n\) và một số nguyên dương \(m\). Trong bài toán này, Khánh Dung chỉ quan tâm đến các xâu ký tự chỉ gồm các ký tự trong số \(m\) ký tự đầu tiên trong bảng chữ cái in thường.

Dung gọi một xâu \(\sigma=\sigma_0\sigma_1...\sigma_{n-1}\) là xâu lý thú khi và chỉ khi: với mọi \(i, j\) \((0\leq i, j < n)\) mà \(0 < |i-j|\leq \delta_i\) thì \(\sigma_i\ne \sigma_j\). Với mỗi xâu lý thú \(\sigma\), cô ấy gọi \(\text{rank}(\sigma)\) là số lượng xâu lý thú có cùng độ dài với xâu \(\sigma\) và có thứ tự từ điển nhỏ hơn hẳn \(\sigma\).

Cho biết ba giá trị \(n\), \(m\), \(k\) và dãy \(\delta\), bạn hãy lập trình xác định xâu \(s\) sao cho \(\text{rank}(s)=k\).

Input
  • Dòng đầu chứa ba số nguyên dương \(n\), \(m\), và \(k\) \(\left(1\leq n\leq 25, 1\leq m\leq 5, 0\leq k\leq 10^{18}\right)\).
  • Dòng tiếp theo chứa \(n\) số nguyên không âm \(\delta_0, \delta_1,...,\delta_{n-1}\).
Output
  • Gồm một xâu lý thú \(s\) độ dài \(n\) thỏa mãn \(\text{rank}(s)=k\). Nếu không tồn tại xâu thỏa mãn thì in ra \(-1\).
Ví dụ
Sample input 01
3 5 48
1 2 3
Sample output 01
eab
Giải thích

Xâu lý thú \(s\) cần tìm gồm có \(3\) ký tự đôi một khác nhau, đồng thời \(\text{rank}(s)=48\).

Sample input 02
4 5 214
1 0 0 1
Sample output 02
cddc
Giải thích

Xâu lý thú \(s\) cần tìm có dạng \(\sigma_0\sigma_1\sigma_2\sigma_3\) với \(\sigma_0\ne \sigma_1\) và \(\sigma_2\ne \sigma_3\), đồng thời \(\text{rank}(s)=214\).