华为机试:字符串加密

#include <iostream>
#include <string>
#include <unordered_map>
using namespace std;

int main() {
    string key;
    cin >> key;
    unordered_map<char, char> u_m;
    char c = 'a';
    for (char ch : key) {
        if (u_m.find(ch) == u_m.end()) {
            u_m.insert(make_pair(ch, c));
            c++;
        }
    }
    for (char ch = 'a'; ch <= 'z'; ch++) {
        if (u_m.find(ch) == u_m.end()) {
            u_m.insert(make_pair(ch, c));
            c++;
        }
    }
    unordered_map<char, char> r_m;
    for (auto it = u_m.begin(); it != u_m.end(); it++) {
        r_m.insert(make_pair(it->second, it->first));
    }
    string str;
    cin >> str;
    for (char ch : str) {
        cout << r_m[ch];
    }
    cout << endl;
    return 0;
}

全部评论

相关推荐

02-28 13:25
已编辑
门头沟学院 Java
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务