题意翻译
考虑下面的01串序列:
0,00,01,10,000,001,010,011,100,101,110,0000,0001,···,1101,1110,00000,···
首先是长度为1的串,然后是长度为2的串,依此类推。如果看成二进制,相同长度的后一个串等于前一个串加1。注意上述序列中不存在全为1的串。你的任务是是编写一个解码程序。
输入格式:可能有多组数据,对于每组数据,首先输入一个编码头,则上述序列的每个串依次对应编码头的每一个字符。接下来是编码文本(可能有多行组成,你应当把它们拼成一个长长的01串)。编码文本由多个小节组成,每个小节的前三个数字代表小节中每个编码的长度(用二进制表示),然后是各个字符的编码,以全1结束(例如,编码长度为2的小节以11结束)。编码文本以编码长度为000的小节结束。
输出格式:对于每组数据,输出其编码文本解码后的结果。
感谢@hedwig 提供的翻译
输入输出样例
输入 #1
TNM AEIOU
0010101100011
1010001001110110011
11000
$#**\
0100000101101100011100101000
输出 #1
TAN ME
##*\$

最低0.47元/天 解锁文章
2541

被折叠的 条评论
为什么被折叠?



