CF1560F2 Nearest Beautiful Number (hard version)
Description
It is a complicated version of problem F1. The difference between them is the constraints (F1: $ k \le 2 $ , F2: $ k \le 10 $ ).
You are given an integer $ n $ . Find the minimum integer $ x $ such that $ x \ge n $ and the number $ x $ is $ k $ -beautiful.
A number is called $ k $ -beautiful if its decimal representation having no leading zeroes contains no more than $ k $ different digits. E.g. if $ k = 2 $ , the numbers $ 3434443 $ , $ 55550 $ , $ 777 $ and $ 21 $ are $ k $ -beautiful whereas the numbers $ 120 $ , $ 445435 $ and $ 998244353 $ are not.
Input Format
The first line contains one integer $ t $ ( $ 1 \le t \le 10^4 $ ) — the number of test cases. Then $ t $ test cases follow.
Each test case consists of one line containing two integers $ n $ and $ k $ ( $ 1 \le n \le 10^9 $ , $ 1 \le k \le 10 $ ).
Output Format
For each test case output on a separate line $ x $ — the minimum $ k $ -beautiful integer such that $ x \ge n $ .