模拟题,顺便联系一下几个函数
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
#include<map>
using namespace std;
int main(){
int n,m;
cin>>n>>m;
map<string,string> mm;
for(int i=0;i<n;i++){
string s1,s2;
cin>>s1>>s2;
mm[s1]=s2;
}
for(int i=0;i<m;i++){
string s1;
cin>>s1;
if(mm[s1]!="") cout<<mm[s1]<<endl;
else{
int len=s1.size();
string fz=s1.substr(len-1,1);
string fz2="";
if(len>=2)
fz2=s1.substr(len-2,2);
string yuan="aeiou";
if(fz=="y"&&yuan.find(s1.substr(len-2,1))>yuan.size()){
cout<<s1.substr(0,len-1)+"ies"<<endl;
}
else if(fz=="o"||fz=="s"||fz=="x"){
cout<<s1+"es"<<endl;
}
else if(len>=2&&(fz2=="ch"||fz2=="sh")){
cout<<s1+"es"<<endl;
}
else cout<<s1+"s"<<endl;
}
}
return 0;
}