#include <iostream> #include <vector> #include <algorithm> using namespace std; int main() { string s, t; cin >> s; cin >> t; vector<char> arr; // 记录 在字母表中 出现过的字母位置; vector<bool> arr_bool = vector<bool>(26, 0); for (char c : s) { // 将不重复的字符按顺序插入 arr中; if (find(arr.begin(), arr.end(), c) == arr.end()) { arr.push_back(c); arr_bool.at(c - 'a') = 1; } } // 标记已经出现过的 字母 for (char i = 0; i < 26; i++) { if (!arr_bool[i]) { arr.push_back(i + 'a'); } } string result; // 因为字母表和arr中的字符数量是一样的,通过下标直接对应到arr中的位置; for (char c : t) { int idx = c - 'a'; result += arr[idx]; } cout << result << endl; }