社区讨论
玄关
P3752语言普查参与者 1已保存回复 0
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 0 条
- 当前快照
- 1 份
- 快照标识符
- @m68rxmfs
- 此快照首次捕获于
- 2025/01/23 11:29 去年
- 此快照最后确认于
- 2025/11/04 10:58 4 个月前
#3自己测试没问题,就是死活过不了
CPP#include <bits/stdc++.h>
using namespace std;
map<string,set<string> > m;
int n;
int main()
{
cin>>n;
for(int i=0;i<=n;i++)
{
string x,p;
getline(cin,x);
x+=' ';
int ls=0;
for(int j=0;j<x.size();j++)
{
if(x[j]==' ')
{
if(ls==0)
{
p=x.substr(ls,j-ls);
ls=j+1;
}
else
{
string u;
u=x.substr(ls,j-ls);
for(int k=0;k<u.size();k++)
{
if(u[k]>='A'&&u[k]<='Z') u[k]+=32;
}
m[p].insert(u);
ls=j+1;
}
}
}
}
string s;
getline(cin,s);
while(getline(cin,s))
{
string x,p;
int ls=0;
for(int i=0;i<s.size();i++)
{
if(s[i]>='A'&&s[i]<='Z') s[i]+=32;
}
s+=' ';
bool f=0;
for(int i=0;i<s.size();i++)
{
if(s[i]=='.' || s[i]==',' || s[i]=='!' || s[i]=='?' || s[i]==';' || s[i]=='(' || s[i]==')' || s[i]==' ')
{
p=s.substr(ls,i-ls);
if(i<s.size()-1) ls=i+1;
map<string,set<string> >::iterator it;
for(it=m.begin();it!=m.end();it++)
{
if((it->second).count(p))
{
f=1;
cout<<it->first<<endl;
break;
}
}
}
if(f) break;
}
}
return 0;
}
回复
共 0 条回复,欢迎继续交流。
正在加载回复...