首页 > 代码库 > POJ 2141 Message Decowding(map)
POJ 2141 Message Decowding(map)
Message Decowding
Time Limit: 1000MS | Memory Limit: 65536K | |
Total Submissions: 11735 | Accepted: 6536 |
Description
The cows are thrilled because they‘ve just learned about encrypting messages. They think they will be able to use secret messages to plot meetings with cows on other farms.
Cows are not known for their intelligence. Their encryption method is nothing like DES or BlowFish or any of those really good secret coding methods. No, they are using a simple substitution cipher.
The cows have a decryption key and a secret message. Help them decode it. The key looks like this:
Which means that an ‘a‘ in the secret message really means ‘y‘; a ‘b‘ in the secret message really means ‘r‘; a ‘c‘ decrypts to ‘w‘; and so on. Blanks are not encrypted; they are simply kept in place.
Input text is in upper or lower case, both decrypt using the same decryption key, keeping the appropriate case, of course.
Cows are not known for their intelligence. Their encryption method is nothing like DES or BlowFish or any of those really good secret coding methods. No, they are using a simple substitution cipher.
The cows have a decryption key and a secret message. Help them decode it. The key looks like this:
yrwhsoujgcxqbativndfezmlpk
Which means that an ‘a‘ in the secret message really means ‘y‘; a ‘b‘ in the secret message really means ‘r‘; a ‘c‘ decrypts to ‘w‘; and so on. Blanks are not encrypted; they are simply kept in place.
Input text is in upper or lower case, both decrypt using the same decryption key, keeping the appropriate case, of course.
Input
* Line 1: 26 lower case characters representing the decryption key
* Line 2: As many as 80 characters that are the message to be decoded
* Line 2: As many as 80 characters that are the message to be decoded
Output
* Line 1: A single line that is the decoded message. It should have the same length as the second line of input.
Sample Input
eydbkmiqugjxlvtzpnwohracsf Kifq oua zarxa suar bti yaagrj fa xtfgrj
Sample Output
Jump the fence when you seeing me coming
#include<iostream> #include<stdio.h> #include<cstring> #include<map> using namespace std; int main() { map <char,char> record; map<char, char >::iterator it; char str1[26],str2[101]; int i; for(i=0;i<26;i++) { cin>>str1[i]; record[i+'a']=str1[i]; } getchar(); gets(str2); int len; len=strlen(str2); for(i=0;i<len;i++) { if(str2[i]==' ') { cout<<" "; continue; } else if(str2[i]>='A'&&str2[i]<='Z') { it=record.find(str2[i]+32); cout<<char(it->second-32); } else { it=record.find(str2[i]); cout<<it->second; } } cout<<endl; return 0; }
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。