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\).
Test 1
Input
3 5 48
1 2 3
Output
eab
Note
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\).
Test 2
Input
4 5 214
1 0 0 1
Output
cddc
Note
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\).
Bình luận