#include <bits/stdc++.h> using namespace std; int main () { string str, input, keystr; cin >> str; cin >> input; //去重,新字母表开头 int num[26] = {0}; //num[0]是a出现的次数,num[1]是b的次数..... num[25]是z的次数 for(int i = 0; i < str.length(); i++) { if(num[str[i] - 'a'] == 0) { num[str[i] - 'a'] += 1; keystr.push_back(str[i]); // } } //按顺序加入表头没有的字母 for(int i = 0; i < 26; i++) { if(num[i] == 0) keystr.push_back((char)(i + 'a')); } // 输出加密后的字符串 for(int i = 0; i < input.length(); i++) cout << keystr[input[i] - 'a']; return 0; }
活动地址: 牛客春招刷题训练营 - 编程打卡活动