求助!!
  • 板块灌水区
  • 楼主Gnimnehs
  • 当前回复9
  • 已保存回复9
  • 发布时间2023/9/30 21:10
  • 上次更新2023/11/2 16:54:12
查看原帖
求助!!
772337
Gnimnehs楼主2023/9/30 21:10

【问题描述】

机房的生活是如此寂寞以至于以 cs 为首的同学们选择了天天在巴别小精灵里刷单词来打发无 聊的时间。cs 日复一日地种着她的矿,yk 每天孜孜不倦地去偷她的矿,不过呢,即使 cs 的矿每天 都被偷掉一半她也不在乎,毕竟作为一个不玩游戏的好同学,cs 玩巴别的目的更多地在于背单词而 不是种矿。

巴别小精灵的词库里有很多 cs 不认识的单词和不小心选错的单词,cs 想把它们一一记录到错 题本里,不过和字符串相比,cs 更喜欢数字串。为了少敲几次键盘,cs 想到了一个压缩信息的方 法。

举例说明,考虑一个字符串“xyx yy yy xyx”,cs 的初始词典里只有 3 条:x 的编码为 1、y 的编码为 2、空格的编码为 3。 于是 xyx 的编码为 1 2 1,加上后面 1 个空格就是 1 2 1 3(相邻两 数之间用空格隔开)由于有了一个空格,我们就知道 xyx 是一个单词,但是该单词没有出现在 cs 的词典中,cs 的词典就自动把这个单词添加到词典中,编码为 4,然后按照新的词典对后面的单词 进行编码。cs 现在需要从编码还原出她的错题本,为了节省一点时间多背几个单词,她希望你帮她 完成解码的工作。

【输入】

第 1 行一个整数 n,n<=27。

第 2 行有 n 个字符,第 i 个字符表示 cs 的初始词典里编码为 i 的字符,保证这 n 个字符都不 同并且有 1 个是空格。

第 3 行有 1 个数字串,表示按 cs 的编码规则处理过的错题本。

【输出】

输出一行一个字符串,表示 cs 的原始错题本。

【输入样例】

特别提醒:第2行的xy后面有一个空格哦~

3

xy

2 2 1 2 3 1 1 3 4 3 1 2 1 3 5 3 6

【输出样例】

yyxy xx yyxy xyx xx xyx

【数据范围】

对于 100%的数据满足:单词长度不超过 10,cs 的错题本的总单词数不超过 1000。

2023/9/30 21:10
加载中...