//****|*|*-**|*-**|---
#include <iostream>
#include <map>
#include <vector>
#include <algorithm>
#include <utility>
#include <string>
using namespace std; const int maxn = + ;
string key[] = {
"*-", "-***", "-*-*", "-**",
"*", "**-*", "--*", "****",
"**", "*---", "-*-", "*-**",
"--", "-*", "---", "*--*",
"--*-","*-*", "***", "-",
"**-","***-", "*--", "-**-",
"-*--","--**"
};
char value[] = "abcdefghijklmnopqrstuvwxyz"; map<string, char> table; void solve(); void solve()
{
string line;
for (int i = ; i < ; i++) {
table.insert(make_pair(key[i], value[i]));
}
// for (const auto &e : table) { //遍历table, c++11
// cout << e.first << " " << e.second << endl;
// }
string t = "";
cin >> line;
for (unsigned i = ; i < line.size(); i++) {
if (line[i] != '|') {
t += line[i];
} else {
printf("%c", table[t]);
t = "";
}
}
printf("%c\n", table[t]);
} int main()
{
solve();
return ;
}
很简单的题目,主要是了解c++的map容器的用法
顺便推荐一个学长的博客,整理的超级完美: http://www.jianshu.com/p/26d4d60233a4