先输入字典中单词的个数,再输入n个单词作为字典单词。
输入一个单词,查找其在字典中兄弟单词的个数
再输入数字n
#include <iostream>
#include <vector>
#include <algorithm>
#include <string>
using namespace std;
int main() {
vector<string>s;//用来存储单词字典中的单词
vector<string>temp;//用来存储兄弟单词
string string1;
int n=0;
int N;
cin>>N;//用来存储单词数目
while(cin>>string1)
{
s.push_back(string1);//input the letter
n++;
if(n==N)
break;//超过N结束输入
}
sort(s.begin(),s.end());//调用sort方法进行排序,形成单词字典
for(int i=0;i<N;i++)
{
cout<<s[i]<<" ";//用来检查排序后的单词
}
cout<<"input the finding letter";
int index;
cin>>index;//输入要查找的编号
int count=0;
for(int i=0;i<N;i++)
{
if (i!=index-1&&s[i]!=s[index-1])//排除相同的单词
{
string string2 = s[i];
sort(string2.begin(), string2.end());
cout<<string2<<endl;
if(string2.compare(s[i])!=0) { //单词内部排序后一样的计数器加一
count++;
temp.push_back(s[i]);
}
}
}
cout<<count<<" ";
for(int i=0;i<temp.size();i++)//输出兄弟单词
{
cout<<temp[i]<<" ";
}
return 0;
}