Xâu thứ k

Xem PDF



Tác giả:
Dạng bài
Điểm: 500 (p) Thời gian: 1.0s Bộ nhớ: 256M Input: bàn phím Output: màn hình

Hiếu vừa khám phá ra một khái niệm mới và khoe ngay với Quý: định nghĩa về xâu đẹp. Theo đó, một xâu \(s\) được gọi là đẹp nếu \(s\) có không quá \(n\) ký tự và \(f(s)\) chia hết cho \(m\), trong đó \(f(s)\) bằng tổng tất cả các \(g(c)\) với \(c\) là một ký tự trong \(s\), quy ước \(g('a')=1\), \(g('b')=2\), \(g('c')=3,\cdots, g('z')=26\). Ví dụ, với \(n=3\)\(m=9\) thì aap là một xâu đẹp vì \(f("aap")=1+1+16=18\) chia hết cho \(m=9\), còn aah không phải là một xâu đẹp vì \(f("aah")=1+1+8=10\) không chia hết cho \(m=9\). Với xâu rỗng \(s= \emptyset\) thì \(f(s)=0\) (do đó \(s=\emptyset\) cũng là một xâu đẹp với mọi \(m\)).

Quý hiểu ngay khái niệm mới của Hiếu và liền đố ngược lại cậu: hãy tìm ra xâu đẹp có thứ tự từ điển nhỏ thứ \(k\) với \(n\)\(m\) cho trước. Nhắc lại, xâu \(A\) được xem là có thứ tự từ điển nhỏ hơn xâu \(B\) nếu tồn tại một vị trí \(t\) sao cho \(A[1...t−1]=B[1...t−1]\)\(A[t]<B[t]\).

Vì số \(k\) của Quý đưa ra quá lớn nên Hiếu chỉ biết ấp úng và nhờ đến các bạn lập trình giải giúp câu đố này cho Hiếu. Hãy giúp Hiếu tìm ra xâu đẹp đó nhé!

Input

  • Gồm một dòng duy nhất chứa ba số nguyên dương \(n\), \(m\)\(k (2 \leq k \leq 10^{15})\).

Output

  • In ra xâu đẹp nhỏ thứ \(k\) theo thứ tự từ điển. Nếu số lượng xâu đẹp nhỏ hơn \(k\), in ra \(−1\).

Scoring

  • Subtask \(1\) (\(20\%\) số điểm): \(n \leq 4\).
  • Subtask \(2\) (\(20\%\) số điểm): \(n \leq 100,m=1\).
  • Subtask \(3\) (\(60\%\) số điểm): \(n,m \leq 100\).

Example

Test 1

Input
3 9 8
Output
ace
Note

Các xâu đẹp đầu tiên thứ tự từ điển là \(\emptyset\) (xâu rỗng), \(aag, aap, aay, abf, abo, abx\)\(ace\).


Bình luận

Không có bình luận nào.