#3395. [GESP202312四级] 小杨的字典

[GESP202312四级] 小杨的字典

题目描述

在遥远的星球,有两个国家 AA 国和 BB 国,他们使用着不同的语言:AA 语言和 BB 语言。小杨是 BB 国的翻译官,他的工作是将 AA 语言的文章翻译成 BB 语言的文章。 为了顺利完成工作,小杨制作了一本字典,里面记录了NNAA 语言单词对应的 BB 语言单词,巧合的是,这些单词都由地球上的 2626 个小写英文字母组成。 小杨希望你写一个程序,帮助他根据这本字典翻译一段 AA 语言文章。这段文章由标点符号 !()[];:",./?<>!()-[]{}|;:’",./?<> 和一些 AA 语言单词构成,每个单词之间必定由至少一个标点符号分割,你的程序需要把这段话中的所有 AA 语言单词替换成它的 BB 语言翻译。特别地,如果遇到不在字典中的单词,请使用大写 UNKUNK 来替换它。 例如,小杨的字典中包含 22AA 语言单词 abcabcdd ,它们的 BB 语言翻译分别为 aadefdef ,那么我们可以把 AA 语言文章 abc.d.d.abc.abcd. 翻译成 BB 语言文章 a.def.def.a.UNK. ,其中,单词 abcdabcd 不在词典内,因此我们需要使用 UNKUNK 来替换它。

输入格式

第一行一个整数 NN ,表示词典中的条目数。N100 N \leq 100

接下来 NN 行,每行两个用单个空格隔开的字符串 AA, BB ,分别表示字典中的一个 AA 语言单词以及它对应的 BB 语言翻译。保证所有 AA 不重复;保证 AABB 的长度不超过 1010

最后一行一个字符串 SS ,表示需要翻译的 AA 语言文章。保证字符串 SS 的长度不超过 10001000 ,保证字符串 SS 只包含小写字母以及标点符号 !()[];:",./?<>!()-[]{}|;:’",./?<>

输出格式

输出一行,表示翻译后的结果。

样例

2
abc a
d def
abc.d.d.abc.abcd.
a.def.def.a.UNK.
3
abc a
d def
abcd xxxx
abc,(d)d!-abc?abcd
a,(def)def!-a?xxxx
1
abcdefghij klmnopqrst
!()-[]{}\|;:'",./?<>abcdefghijklmnopqrstuvwxyz
!()-[]{}\|;:'",./?<>UNK

来源

GESP 2023年12月 C++四级T1