10分求调
查看原帖
10分求调
1273755
ODLxtl楼主2025/6/26 22:25
#include<iostream>
#include<string>
#include<map>
using namespace std;
map<string,string> mp;
string s1,s2,t,s,ans="";
int n,a;
int main(){
	cin>>n;
	for(int i=0;i<n;i++){
		cin>>s1>>s2;
		mp.insert(make_pair(s1,s2));
	}
	cin>>s;
	for(int i=0;i<s.size();i++){
        a=0;
        for(int j=i;islower(int(s[j]));j++)
            t[j-i]=s[j],t[j-i+1]='\0',a++;
		if(!islower(int(s[i]))) ans+=s[i];
		else if(mp.count(t)) ans+=t,i+=a-1;
		else ans+="UNK",i+=a-1;
	}
	cout<<ans;
	return 0;
}
2025/6/26 22:25
加载中...