2023-12-21 21:43:40
发布于:上海
#include<iostream>
#include<string>
using namespace std;
int main(){
string a,b,c;
int abc=0;
string m=" ";
int num[26]={};
cin>>a>>b>>c;
if(a.size()<26){
cout<<"Failed";
return 0;
}
for(int i=0;i<a.size();i++){
if(m[a[i]-'A']==b[i]||num[a[i]-'A']==0){
m[a[i]-'A']=b[i];
num[a[i]-'A']++;
abc++;
}else{
cout<<"Failed";
return 0;
}
}
if(abc<26){
cout<<"Failed";
return 0;
}
for(int i=0;i<c.size();i++){
cout<<m[c[i]-65];
}
return 0;
}
- 感觉没问题
- 就一个测试点错
- ?????????
全部评论 1
#include<iostream> #include<cmath> #include<cstring> #include<algorithm> using namespace std; string a,b,c;int a1[1000],b1[1000],c1[1000],word[1000],flag[1000]; int main(){ cin>>a>>b>>c; if(a.length()<26) { cout<<"Failed";return 0; } for(int i=0;i<a.length();i++){ if(flag[b[i]]){ if(flag[b[i]]==a[i]) continue; else{ cout<<"Failed"; return 0; } } if((int)(word[a[i]])){ if((int)word[a[i]]==(int)b[i]){ continue; } else{ cout<<"Failed"; return 0; } } else { word[a[i]]=b[i];flag[b[i]]=a[i]; } } string d; for(int i=0;i<c.length();i++) { if(!word[c[i]]){ cout<<"Failed";return 0; } else d+=word[c[i]]; } cout<<d; return 0; }
2024-11-03 来自 浙江
0
有帮助,赞一个