编写一个程序,确定正整数集合中第 $k$ 小的元素,该集合中的元素需同时满足:能被 $m$ 整除,且各位数字之和等于 $s$(前提是这样的数存在且不会太大)。程序需要处理多个 $k$ 值。
输入格式
输入的第一行包含三个正整数 $s, m, q$,分别指定了所考虑的整数集合的条件以及查询的数量。接下来的 $q$ 行每行包含一个查询,第 $i$ 行包含一个正整数 $k_i$。
输出格式
输出应包含 $q$ 行,对应各个查询的答案。即第 $i$ 行应包含第 $k_i$ 小的、能被 $m$ 整除且各位数字之和为 $s$ 的正整数;如果这样的数不存在,或者该数超过 200 位,则输出单词 NIE(波兰语,意为“否”)。
样例
输入 1
5 2 3 2 4 1000000000000000000
输出 1
32 104 NIE
说明
各位数字之和为 5 的连续整数为:5, 14, 23, 32, 41, 50, 104, 113, 122, ... 其中偶数的子序列为:14, 32, 50, 104, 122, ... 第 $10^{18}$ 小的数超过 200 位。
子任务
测试集由以下子任务组成。在每个子任务内,可能包含多个测试组。 所有子任务均满足以下条件:$1 \le s \le 200, 1 \le m \le 200, 1 \le q \le 10\,000, 1 \le k_i \le 10^{18}$。
| 子任务 | 属性 | 分值 |
|---|---|---|
| 1 | $q \le 20$, 答案不超过 $1\,000\,000$ | 5 |
| 2 | $s = 1$ | 5 |
| 3 | $k_i = 1$ | 10 |
| 4 | $q = 1, m = 1, k_i \le 1000$ | 15 |
| 5 | $q = 1, m = 1, k_i \le 1\,000\,000$ | 15 |
| 6 | $q = 1, m = 1, k_i \le 10^9$ | 15 |
| 7 | $m = 1$ | 15 |
| 8 | 无额外限制 | 20 |