luogu#P3982. 龙盘雪峰信息解析器
龙盘雪峰信息解析器
题目背景
薄雾笼罩,远方的雪峰无限迷人,感慨之间,阴影将至。
与真程海洋毗邻的龙盘雪山与我们保持着联系,但是龙盘雪山的通讯员常常把信息进行奇怪的加密,然后要我们来破译,很是谨慎。但是,久而久之,我们的通讯员不耐烦了,差点掀桌子砸凳子不干了。所以我们想做一个信息解析器,就是这样。
题目描述
龙盘雪峰传来的信息都加密成了复杂的代码,我们需要你来做一个程序,按照解析规则解密这些代码,翻译成文字信息,以下是其解析规则:
该代码应为一连串的二进制码(只存在和,做加法时满进,每个或占一个字符),每八个字符为一单元(这也是规则)。
每个单元都有这样的规则:一、若【前三个字符】为时表示需要转换为字母,字母代码为,字母为,个大写字母以字母表顺序按照这种规律顺序排列,分别对应一个二进制代码。二、若【前三个字符】为,则该单元翻译为空格。三、若【第一个字符】为,则该单元表示一个数,待定与下一个单元所表示的数做加法。加法过程中,这两个单元应转换为十进制,然后除以并舍弃余数才相加,加法结束后,这两个单元做加法得到的结果即为这两个单元的翻译结果(翻译结果用十进制表示,这两个单元就都翻译完毕了,详见样例)。
由于保险,龙盘雪峰经常发送【假代码】,而假代码则不存在上述规则,如果是假代码,仅输出。
输入格式
输入仅一行,包含一串连续的代码(长度不超过个字符),中间不会出现空格,保证不出现空代码。
输出格式
输出仅一行,包含一个字符串,是二进制代码按照上述规则翻译后的文字信息。
若该二进制代码中存在假代码信息,则只输出。
1010000011100000101011111010100010100110
A PIG
1
Error
0000001000000010000000100000001010100000
22A
IOIOOOOI
Error
提示
样例一说明:
代表,下一个单元开头为,那么翻译为空格,再下一个单元开头为,后接,比多了,那么代表的就是了,以此类推,最后翻译为。
注意:
对于规则一的解释:个大写字母按照字母表的顺序排列,以开始,往后的每一个字母的二进制码的值都比前面一个字母的二进制码的值多(注意满二进一);
此题目有误解题意的现象,请一定要看清楚题目,搞清楚逻辑关系,注意细节!