样例过了,80分求助!
查看原帖
样例过了,80分求助!
1237828
liuxuanming_awa楼主2024/8/30 14:40
#include <bits/stdc++.h>
using namespace std;
struct word{
	string word;
	int idx;
}a[101],b[101];

int main(){
	int n;
	cin >> n;
	//
	for(int i=1;i<=n;i++){
		cin >> a[i].word >> b[i].word;
		//
		a[i].idx=i;
		b[i].idx=i;
	}
	//
	string s,s2="",w="";
	cin >> s;
	s+=' ';
	//
	bool is=0,is2=0;
	for(int i=0;i<s.length();i++){
		if(s[i]>='a' && s[i]<='z'){
			w+=s[i];
		}else{
			is=0;
			//
			for(int j=1;j<=n;j++){
				if(w==a[j].word){
					is=1;
					w=b[j].word;
				}
			}
			//
			if(is) s2+=w;
			else if(w!="") s2+="UNK";
			//
			if(s[i]<='a' || s[i]>='z'){
				s2+=s[i];
			}
			//
			w="";
			is2=0;
		}
	}
	//
	for(int i=0;i<s2.length()-1;i++){
		cout << s2[i];
	}
	//
	return 0;
}
2024/8/30 14:40
加载中...