码迷,mamicode.com
首页 > 其他好文 > 详细

uva213 Message Decoding

时间:2017-10-02 12:42:51      阅读:111      评论:0      收藏:0      [点我收藏+]

标签:mes   算法   顺序   第二版   表示   关系   输入   映射关系   sage   

题意  编写一个解码程序   对数字串进行解码

输入分为两部分,一部分是编码头,如TNM AEIOU,第二部分是经过编码之后的信息,是0和1的字符串,编码之后的0和1字符串输入可能会多行,最后结尾为000字符串。编码映射规则如下,编码头和0和1字符串对应,对应的0和1字符串为0,00,01,10,000,001,011,100,101,110,0000,0001,...,1101,1110,00000,.......,首先是长度为1的串,然后是长度为2的串,然后是长度为3的串,以此类推,相同长度的串二进制串不能出现都为1的情况,如1,11,111等,相同长度的串的后一个串等于前一个串加1,所以长度为1,2,3的串的数量为1,3,7,即(1<<n)-1,n为字符串长度。映射规则如T对应0,N对应00,M对应01,“ ”对应10,A对应000,如此顺序对应。

输入的第二部分是编码之后的信息,你需要做的就是根据上面的映射关系对二进制信息进行解码,二进制信息编码规则如下,分为很多部分,每个部分首先是三个长度的01编码,如编码头为TAM AEIOU的编码信息0010101100011 1010001001110110011 11000,首先是三个长度为1的串001,表示后面接长度为1的串,0,映射T,1表示长度为1的串结束,再输入三个字符,011,长度为三的串开始000映射A,

 

 

此题是算法竞赛入门经典第二版中的例题   第83页   里面有详细的讲解;

uva213 Message Decoding

标签:mes   算法   顺序   第二版   表示   关系   输入   映射关系   sage   

原文地址:http://www.cnblogs.com/ArvinShaffer/p/7619901.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!