Bacon's Cipher hdu4144 水题

来源:互联网 发布:返利直销软件 编辑:程序博客网 时间:2024/06/04 19:53

http://acm.hdu.edu.cn/showproblem.php?pid=4144

题意:用任意字母表示0,用数字表示1,每5个字符得到一个二进制数字,然后根据二进制编码,找到相应的字母,输出破译后的字符串。

#include <iostream>#include <string.h>using namespace std;#define LEN 10005char s[LEN];void decode(char *s){int i,j,t;char c=0;for (i=0;i<5;i++){if (s[i]>=48&&s[i]<=57){t=1;for (j=0;j<(4-i);j++) //这个,二进制到十进制的转换…… 自我感觉并不是很优秀的样子。t=t*2;c+=t;}}printf("%c",c+65);}int main(){#ifndef ONLINE_JUDGEfreopen("Gin.txt","r",stdin);#endifint l,i;while (scanf("%d%s",&l,s)!=EOF){for (i=0;i<l;i+=5)decode(s+i);putchar(10);}return 0;}


原创粉丝点击