编程题
### 问题描述 小齐有一部新手机,喜欢发送短信,但由于她在小屏幕上用大蹄子打字时容易出错。为了帮助她,小齐找到了约翰农夫,请求他编写一个自动补全应用程序,该应用程序接受一个部分单词并建议如何完成它。 自动补全应用程序可以访问一个包含 $W$ 个单词的字典,每个单词由小写字母 $a..z$ 组成,所有单词的总字母数最多为 1,000,000。该应用程序以输入形式接收一个包含 $N$ 个部分单词的列表,每个单词最多包含 $1000$ 个小写字母。对于每个部分单词 $i$,还提供一个整数 $K_i$,使得应用程序必须找到以部分单词 $i$ 为前缀的按字母顺序的第 $K_i$ 个单词。也就是说,如果将第 $i$ 个部分单词的所有有效完成按顺序排列,应用程序应输出此序列中第 $K_i$ 个完成。 ### 输入格式 第 $1$ 行:两个整数 $W$ 和 $N$。 第 $2$ 行至第 $W+1$ 行:第 $i$ 行为字典中的第 $i$ 个单词。 第 $W+2$ 行至第 $W+N+1$ 行:第 $W+i+1$ 行为一个整数 $K_i$,后跟一个部分单词。 ### 输出格式 第 $i$ 行应包含字典中第 $i$ 个部分单词的第 $K_i$ 个完成(按字母顺序),如果完成数不足 $K_i$ 个则输出 $-1$。 ### 样例输入 ``` 10 3 dab ba ab daa aa aaa aab abc ac dadba 4 a 2 da 4 da ``` ### 样例输出 ``` 3 1 -1 ``` ### 评测数据规模 $1 \leq N \leq 1000$。
查看答案
赣ICP备20007335号-2