學(xué)過(guò)英語(yǔ)的就都知道怎么做
沒(méi)學(xué)過(guò)的題目也看不懂的。
我這種水平的都能看懂所以感覺(jué)沒(méi)什么好注意的了
1
#include<stdio.h>
2
#include<map>
3
#include<string>
4
using namespace std;
5
6
map<string,int>p1;
7
8
int main()
9

{
10
char str1[50],str2[50][50],str[50];
11
string s;
12
int m,n,len,i;
13
scanf("%d %d", &m, &n);
14
for(i = 0; i < m; i++)
15
{
16
scanf("%s %s",str1,str2[i]);
17
s = str1;
18
p1[s] = i;
19
}
20
while(n--)
21
{
22
scanf("%s",str);
23
s = str;
24
if(p1.count(s) == 1)
25
{
26
printf("%s\n",str2[p1[s]]);
27
continue;
28
}
29
len = strlen(str);
30
if(len == 1 && str[len-1] == 'y')
31
{
32
str[len-1] = 'i';
33
str[len] = 'e';
34
str[len+1] = 's';
35
str[len+2] = '\0';
36
}
37
else if(len > 1 && str[len-1] == 'y' && str[len-2] != 'a' && str[len-2] != 'i' && str[len-2] != 'o' && str[len-2] != 'e' && str[len-2] != 'u')
38
{
39
str[len-1] = 'i';
40
str[len] = 'e';
41
str[len+1] = 's';
42
str[len+2] = '\0';
43
}
44
else if(len > 1 && str[len-1] == 'h' && (str[len-2] == 's' || str[len-2] == 'c'))
45
{
46
str[len] = 'e';
47
str[len+1] = 's';
48
str[len+2] = '\0';
49
}
50
else if(str[len-1] == 's' || str[len-1] == 'o' || str[len-1] == 'x')
51
{
52
str[len] = 'e';
53
str[len+1] = 's';
54
str[len+2] = '\0';
55
}
56
else
57
{
58
str[len] = 's';
59
str[len+1] = '\0';
60
}
61
printf("%s\n",str);
62
}
63
return 0;
64
}
65
66