NQTEN - 10 chữ số
Trong toán học có mười chữ số khác nhau. Khi các chữ số thay đổi vị trí của nhau, sẽ có số được tăng lên, sẽ có số bị giảm đi (ví dụ: 213 khi đảo thành 312 sẽ lớn hơn số ban đầu, nhưng đảo thành 132 thì số đó lại nhỏ hơn số ban đầu), có những số sẽ không thể thay đổi (ví dụ: 111 khi đổi vị trí các chữ số cho nhau thì số đó vẫn được giữ nguyên). nqson muốn biết trong một dãy chữ số rất dài, khi lấy một đoạn gồm \(k\) chữ số trong dãy đó thì số bé nhất thứ \(h\) có thể thu được là số bao nhiêu.
Lưu ý: Tính cả số 0 ở đầu, các số, các số trùng nhau chỉ được tính là 1 số. Nếu \(h\) quá lớn, in ra số lớn nhất có thể.
Giả sử:
Cho dãy chữ số 5838, lấy một đoạn gồm 2 chữ số thì tổng cộng sẽ có 3 đoạn có thể lấy.
Đoạn 1: 58. Có các số là 58 và 85
Đoạn 2: 83. Có các số là 38 và 83
Đoạn 3: 38. Có các số là 38 và 83
Vậy các số có thể thu về là 38, 58, 83, 85
Đầu vào
Dòng thứ nhất là dãy chữ số siêu dàiiiiiiiiiii
Dòng thứ hai là số \(k\) và \(h\)
Đầu ra
Kết quả của bài toán.
Giới hạn
20%: \(1 \le k \le len(a) \le 200, h = 1\)
20%: \(1 \le k \le len(a) \le 5*10^4, h = 1\)
20%: \(1 \le k \le 9 \le len(a) \le 5*10^4, h \le 10^{5}\)
20%: \(1 \le k \le len(a) \le 200, h \le 10^{18}\)
20%: \(1 \le k \le len(a) \le 5*10^4, h \le 10^{18}\)
Ví dụ 1
Đầu vào
5838
2 2
Đầu ra
58
Ví dụ 2
Đầu vào
58380
3 1
Đầu ra
038
Comments