AT_abc342_c 题解
赛时思路
提交记录:
思路
首先创建一个字符类型的映射数组 a 要变成字符 r,那么 a 的地方存储的是 r。
首先进行初始化
然后把每一步操作进行存储。
因为后面的操作会影响一开始的操作,所以使用倒推法。
从
为什么是
最后逐位输出
代码
#include<bits/stdc++.h>
using namespace std;
#define ll long long
map<char,char> m;
int main(){
int n;
cin>>n;
for(int i='a'; i<='z'; i++){
m[(char)i]=(char)i;
}
string s;
cin>>s;
int q;
cin>>q;
char c[200005],d[200005];
for(int i=1; i<=q; i++) cin>>c[i]>>d[i];
for(int i=q; i>=1; i--){
m[c[i]]=m[d[i]];
}
for(int i=0;i<n;i++){
cout<<m[s[i]];
}
return 0;
}