P6495 [COCI 2016/2017 #2] Tavan
题目描述
Željko 正在读奶奶的一封信。由于年代久远,信中的一些单词已经无法辨认。他选出了一个长度为 $n$ 的单词,将其中 $m$ 个无法辨认的字母替换为 `#`。
对于每一处 `#`,奶奶都给出了 $k$ 个字母,该处原先的字母是这 $k$ 个字母之一。所有可能的单词中**按字典序排列**的第 $x$ 个,即为原先的单词。
请你帮助他们找出原先的单词。
输入格式
第一行四个整数 $n,m,k,x$。
第二行一个长度为 $n$ 的字符串,表示 Željko 选出的单词。
接下来 $m$ 行,每行一个长度为 $k$ 的字符串,表示奶奶给出的字母。
输出格式
一行,一个字符串,表示原先的单词。
说明/提示
#### 样例 1 解释
所有可能的单词按字典序排列如下:
- `pololjeni`
- `pololjeui`
- `pololjezi`
- `poooljeni`
- `poooljeui`
- `poooljezi`
- `posoljeni`
- `posoljeui`
- `posoljezi`
第 $7$ 个单词为 `posoljeni`。
------------
#### 数据规模与约定
对于 $100\%$ 的数据,$1\le n\le 500$,$1\le m\le n$,$1\le k\le 26$,$1\le x\le 10^9$。
所有字符串中仅包含小写字母和 `#`。
------------
#### 说明
**题目译自 [COCI2016-2017](https://hsin.hr/coci/archive/2016_2017/) [CONTEST #2](https://hsin.hr/coci/archive/2016_2017/contest2_tasks.pdf) _T2 Tavan_**。