2013-2014 ACM-ICPC Pacific Northwest Regional Contest L.Languages
阅读原文时间:2023年07月11日阅读:1

题意略。

思路:

这种字符串的模拟题,应该熟练使用stringstream。

详见代码:

#include
using namespace std;

map mp;
vector store;

void change(string& str){
for(int i = ;i < str.length();++i){
str[i] = tolower(str[i]);
}
}

int main(){
std::ios::sync_with_stdio(false);
cin.tie();
int n;
cin>>n;
string str;
getline(cin,str);
for(int i = ;i < n;++i){ getline(cin,str); stringstream ss(str); string name,temp; ss>>name;
while(ss>>temp){
change(temp);
mp[temp] = name;
}
}
getline(cin,str);
while(getline(cin,str)){
for(int i = ;i < str.length();++i){ if(str[i] == ',' || str[i] == '.' || str[i] == '!' || str[i] == ';' || str[i] == '(' || str[i] == ')' || str[i] == '?'){ str[i] = ' '; } } stringstream ss(str); store.clear(); string temp; while(ss>>temp){
change(temp);
store.push_back(temp);
}
for(int i = ;i < store.size();++i){
if(mp.count(store[i])){
cout<<mp[store[i]]<<endl;
break;
}
}
}
return ;
}

手机扫一扫

移动阅读更方便

阿里云服务器
腾讯云服务器
七牛云服务器

你可能感兴趣的文章