nowcoder_宝藏欲しい_map_string

//
#include<bits/stdc++.h>
using namespace std;

int main()
{
    string a,b,s,tt;
    char ch;
    int n,i;

    while( cin>>n )
    {
        map< string,string > mp;
        map< string,string >::iterator it;
        vector< string > v;

        while( n-- )                // 出现一词多义的情况的情况下保留后者
        {
            cin>>b>>a;
            it=mp.find( a );
            if( it==mp.end() )  mp.insert( make_pair( a,b ) );
            else                it->second=b;
        }
        while( getline( cin,s ) )
        {
            if( s.size() ) break;
        }
        s+=' ';                    // 

        tt.clear();
        for( i=0;i<s.size();i++ )
        {
            if( s[i]!=' ' ) tt+=s[i];
            else
            {
                it=mp.find( tt );
                if( it!=mp.end() ) v.push_back( it->second );
                else break;
                tt.clear();			//
            }
        }
        
        if( i==s.size() )
        {
            for( i=0;i<v.size();i++ )
            {
                if( i ) cout<<" ";
                cout<<v[i];
            }
            cout<<endl;
        }
        else cout<<"-1"<<endl;
    }
    return 0;
}
// 括号信息 清空string 特判尾部

猜你喜欢

转载自blog.csdn.net/qq_63173957/article/details/124769863