POJ3253Babelfish

2770 ワード

http://poj.org/problem?id=3253
ハフマンの木で、テーマの下にヒントがあるので、題意は理解しやすいです.

#include<cstdio>

#include<cstring>

#include<iostream>

#include<map>

using namespace std;

int main ()

{

    map<string, string> tra;

    char s[100011], str[100011], s1[100011];

    while (gets(s)&&s[0])

    {

        sscanf(s,"%s %s",str,s1);//       ,       str ,     s1 

        tra.insert(pair<string,string>(s1,str));

    }

    while(cin>>str)

    {

        if (tra.find(str) != tra.end())

            cout<<tra[str]<<endl;

        else

            cout<<"eh"<<endl;

    }

    return 0;

} 

View Code