社区讨论

求各位大佬改改

B3927[GESP202312 四级] 小杨的字典参与者 1已保存回复 0

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
0 条
当前快照
1 份
快照标识符
@mlp37kth
此快照首次捕获于
2026/02/16 19:24
3 天前
此快照最后确认于
2026/02/17 10:48
前天
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int n;
string a[101],b[101];
string str;
int main()
{
	cin>>n;
	for(int i=0;i<n;i++)
	{
		cin>>a[i]>>b[i];
	}
	cin>>str;
	int l=0,r;
	for(int i=0;i<str.size();i++)
	{
		int k1;
		string check;
		if(str[i]>='a'&&str[i]<='z')
		{
			if(check.empty())l=i;
			check+=str[i];
		}
		else
		{
			r=i;
			string lstr,rstr;
			for(int j=r;j<str.size();j++)
			{
				rstr+=str[j];
			}
			for(int j=0;j<l;j++)
			{
				lstr+=str[j];
			}
			bool flag=false;
			for(int k=0;k<n;k++)
			{
				if(check==a[k])
				{
					str=lstr+b[k]+rstr;
					k1=k;
					flag=true;
					break;
				}
			}
			if(flag==false)
			{
				str=lstr+"UNK"+rstr;
			}
		}
		i=r-(a[k1].size()-b[k1].size());
	}
	cout<<str;
}

回复

0 条回复,欢迎继续交流。

正在加载回复...