P1071 [NOIP 2009 提高组] 潜伏者
使用map,记
#include<bits/stdc++.h>
using namespace std;
#define ll long long
const int maxn(1e5+10);
int n;
string a,b,c;
map<char,char>mp;
bool vis[maxn];
int main(){
cin>>a>>b>>c;
for(int i(0);i<a.size();i++){
if(vis[b[i]]&&mp[a[i]]!=b[i]){
cout<<"Failed\n";
return 0;
}
mp[a[i]]=b[i];
vis[b[i]]=true;
}
for(int i('A');i<='Z';i++){
if(!vis[i]){
cout<<"Failed\n";
return 0;
}
}
for(int i(0);i<c.size();i++){
cout<<mp[c[i]];
}
return 0;
}