P1071 潜伏者

//Pro:NOIP2009 T1 P1071 潜伏者

#include<iostream>
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<map>
using namespace std;

const int N=205;

char c[N],y[N],to[N];
char ma[N],am[N];
bool f1[N],f2[N];
int cnt;

int main()
{
    scanf("%s",c);
    scanf("%s",y);
    scanf("%s",to);
    int len=strlen(c);
    for(int i=0;i<len;++i)
    {
        if(!f1[y[i]]&&!f2[c[i]])
        {
            am[c[i]]=y[i],++cnt;
            f1[y[i]]=f2[c[i]]=1;
        }
        else if(!f1[y[i]]||!f2[c[i]])
        {
            puts("Failed");
            return 0;
        }
        else if(am[c[i]]!=y[i])
        {
            puts("Failed");
            return 0;
        }
    }
    if(cnt!=26)
    {
        puts("Failed");
        return 0;
    }
    len=strlen(to);
    for(int i=0;i<len;++i)
        putchar(am[to[i]]);
    return 0;
}

 

posted @ 2018-09-12 10:59  whymhe  阅读(296)  评论(0编辑  收藏  举报