P1071 潜伏者
P1071 潜伏者
题解
翻译密码,明文和密文是一一映射的关系
必须一对一
代码
#include<iostream> #include<cstdio> #include<string> #include<cstring> #include<algorithm> #include<cmath> #include<cstdlib> #include<queue> using namespace std; string s1,s2,s3; int m[27],y[27],num=0; int main() { cin>>s1>>s2>>s3; memset(m,0,sizeof(m)); for(int i=0;i<s1.size() ;i++) { int k1=s1[i]-64; int k2=s2[i]-64; if(!m[k1]&&!y[k2]){ m[k1]=k2+64;y[k2]=k1+64;num++; } else if(m[k1]!=k2+64||y[k2]!=k1+64) { printf("Failed");return 0; } } if(num!=26) { printf("Failed");return 0; } for(int i=0;i<s3.size() ;i++) printf("%c",(char)m[s3[i]-64]); return 0; }