SZU:L89 Frog Encoding
Judge Info
- Memory Limit: 65536KB
- Case Time Limit: 3000MS
- Time Limit: 3000MS
- Judger: Normal
Description
青蛙们发现在传输信件时经常会被别人偷看,愤怒的青蛙向码农们求救。于是,码农们为它们提供了一套加密和解密的方法,从而将它们的信件内容加密成一段莫尔斯电码。现在给出译码程序:
0.加密序列为:
----**----***--**---**---*------******--***--**---**---*----**---***---*****----***--**-----******--
1.每五个字符为一段的莫尔斯电码各对应着一个数字,将其转换为数字为:
91322173322123613273
2.将该串数字分拆为两个一小段的形式:
91 32 21 73 32 21 23 61 32 73
3.按以上每小段中的两个数字在手机上输出字母,当该两个数字为xy时,按y次数字键x即可得到对应字母(如91='w'),以下为对应字母串:
WEAREACMER
至此,"WEAREACMER(We are ACMer)"即为解密序列,加密序列已解密成功。 现在,你能将程序中所输入的一串加密序列解密吗?
Input
第一行输入Case个数t(t<500),对于余下t行,每行输入一串莫尔斯电码序列(保证序列有效,序列长度为l,l为10的整数倍且l<5000)
Output
对于每个Case,输出一行,以表示其对应结果(所有字母用大写表示)
Sample Input
1
----**----***--**---**---*------******--***--**---**---*----**---***---*****----***--**-----******--
Sample Output
WEAREACMER
Init
莫尔斯电码表:
0 ----- 1 *----
2 **--- 3 ***--
4 ****- 5 *****
6 -**** 7 --***
8 ---** 9 ----* 手机键盘字母对应表:
2 ABC 3 DEF
4 GHI 5 JKL
6 MNO 7 PQRS
8 TUV 9 WXYZ 解题思路:用二维数组来做,而且用到了C程序设计语言第一章的 s[++] = a[++] != '\0' ,感觉这题目很好所以发到博客来。
#include <stdio.h>
#include <string.h> char M[][] = {"-----","*----","**---","***--","****-","*****","-****","--***","---**","----*"};
char N[][]={"","","ABC","DEF","GHI","JKL","MNO","PQRS","TUV","WXYZ"};
char s[];
char A[];
int B[];
int main() {
int t,i,k,j, len;
scanf("%d", &t);
while (t--) {
scanf("%s", s);
len = strlen(s);
for (i=;i<len;i+=) {
j=i;
k=;
while (k<)
A[k++] = s[j++];
A[] = '\0';
for(j=;j<;j++) if(strcmp(A,M[j])==) break;
B[i/] = j;
// printf("%d", j);
}
for(i=;i<len/;++i)
putchar(N[B[*i]][B[*i+]-]);
printf("\n");
} }
SZU:L89 Frog Encoding的更多相关文章
- [LeetCode] Frog Jump 青蛙过河
A frog is crossing a river. The river is divided into x units and at each unit there may or may not ...
- javac -encoding utf8 in linux
由于另外负责编码的同事用的是utf-8,我用的默认的编码格式gbk,在提交代码时,为了迁就他,我打算把格式用工具转成utf-8. 转化成果后,然后在make一下,发现javac -encoding u ...
- 创建Odoo8数据库时的“new encoding (UTF8) is incompatible with the encoding of the template database (SQL_ASCII)“问题
Odoo8创建数据库时,显示如下错误信息: DataError: new encoding (UTF8) is incompatible with the encoding of the templa ...
- Node.js Base64 Encoding和Decoding
如何在Node.js中encode一个字符串呢?是否也像在PHP中使用base64_encode()一样简单? 在Node.js中有许多encoding字符串的方法,而不用像在JavaScript中那 ...
- java Properties异常:Malformed \uxxxx encoding.
昨天项目中遇到一个 java.lang.IllegalArgumentException: Malformed \uxxxx encoding.这样的一个异常,debug了一下发现是读取propert ...
- svn: Can't convert string from 'UTF-8' to native encoding 的解决办法(转)
http://www.cnblogs.com/xuxm2007/archive/2010/10/26/1861223.html svn 版本库中有文件是以中文字符命名的,在 Linux 下 check ...
- C# 字符编码类Encoding
在网络通信中,很多情况下都是将字符信息转成字节序列进行传输.将字符序列转为字节序列的过程称为编码.当这些字节传送到接收方,接收方需要逆向将字节序列转为字符序列.这个过程就是解码. 常见编码有ASCII ...
- 字符集和字符编码(Charset & Encoding)
字符集和字符编码(Charset & Encoding)[转] 1.基础知识 计算机中储存的信息都是用二进制数表示的:而我们在屏幕上看到的英文.汉字等字符是二进制数转换之后的结果.通俗的说,按 ...
- 使用英文版eclipse保存代码,出现some characters cannot be mapped using "Cp1251" character encoding.
some characters cannot be mapped using "Cp1251" character encoding. 解决办法:方案一: eclipse-> ...
随机推荐
- 开源 自由 java CMS - FreeCMS2.0 签字
项目地址:http://www.freeteam.cn/ 会员注冊 打开浏览器,输入http://localhost:8080/register.jsp. 输入注冊信息后点击"注冊" ...
- Visual studio 2013 bug:visual studio no editoroptiondefinition export found for the given option nam
昨天VS 2013打开项目,双击cs当文件,下面出现bug. Google没有理由.最后,在刚刚好清理C磁盘缓存用户文件夹. 然后就OK了. 详细的路径是:C:\Users\{当前用户}\AppDat ...
- PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战
原文 PHP-5.5.10+Apache httpd-2.4.9在Windows系统下配置实战 环境配置: 程序准备: PHP windows版本下载地址: http://windows.php. ...
- Oracle中的delete和truncate的关系
转自:http://chenxy.blog.51cto.com/729966/168459 1.相同点 a.都可以删除数据,其中truncate用于全表清空数据,而delete可以选择的删 ...
- Android FM学习中的模块 FM启动过程
最近的研究FM模,FM是一家值我正在学习模块.什么可以从上层中可以看出. 上层是FM按钮的操作和界面显示,因此调用到FM来实现广播收听的功能. 看看Fm启动流程:例如以下图: 先进入FMRadio.j ...
- Java 反射 想
所谓反射.是指在执行时状态中,获取类中的属性和方法.以及调用当中的方法的一种机制. 这样的机制的作用在于获取执行时才知道的类(Class)及当中的属性(Field).方法(Method)以及调用当中的 ...
- hdu 亲和串(kmp)
Problem Description 人随着岁数的增长是越大越聪明还是越大越笨,这是一个值得全世界科学家思考的问题,同样的问题Eddy也一直在思考,因为他在很小的时候就知道亲和串如何判断了,但是发现 ...
- Firefox firebug and xpath checker
From http://blog.sina.com.cn/s/blog_5aefba9a0100csy8.html
- ClassLoader—流程观察程序执行类加载-verbose:class
当调试器,有时你需要看到程序加载的类.记忆的恢复情况.本地接口调用,等等..这时候就需要-verbose命令. 在myeclipse能够通过右键设置(例如以下).也能够在命令行输入java -verb ...
- Swift学习笔记(一)搭配环境以及代码运行成功
原文:Swift学习笔记(一)搭配环境以及代码运行成功 1.Swift是啥? 百度去!度娘告诉你它是苹果最新推出的编程语言,比c,c++,objc要高效简单.能够开发ios,mac相关的app哦!是苹 ...