/*
编写程序通过删除单词尾部的‘s’生成该单词的非复数版本。同时,建立一个单词排除集,用于识别以‘s’结尾、但这个结尾的‘s’又不能删除的单词。例如,放
在该排除集中的单词可能有 success 和 class。使用这个排除集编写程序,删除输入单词的复数后缀,而如果输入的是排除集中的单词,则保持该单词不变。
*/
编写程序通过删除单词尾部的‘s’生成该单词的非复数版本。同时,建立一个单词排除集,用于识别以‘s’结尾、但这个结尾的‘s’又不能删除的单词。例如,放
在该排除集中的单词可能有 success 和 class。使用这个排除集编写程序,删除输入单词的复数后缀,而如果输入的是排除集中的单词,则保持该单词不变。
*/
#include<map>
#include<set>
#include<string>
#include<iostream>
using namespace std;
int main()
{
set<string>sstr;
map<string,int>word_count;
string word;
cout<<"input word;"<<endl;
//建立排除集
while(cin>>word)
{
sstr.insert(word);//sstr是set 对象 此处的排除集
//string s;
//cout<<"input word:"<<endl;
//while(cin>>s)
// if(!sstr.count(s))//不存在
// ++word_count[s];//不存在时会新加入,出现次数+1
}
cin.clear();
string testword;
cout<<"input delete s"<<endl;
while(cin>>testword)
{
if(!sstr.count(testword))//存在为1 不存在为0 判断是否存在
{
testword.resize(testword.size()-1);
cout<<testword<<endl;
cout<<"input delete s"<<endl;
continue;
}
else
{
cout<<"not com word"<<endl;
cout<<"input next delete s"<<endl;
continue;
}
}
return 0;
}