#include <iostream> #include<vector> #include<algorithm> using namespace std; bool isbrother(string str, string order) { if (str.length() == order.length()) { if (str == order) { return false; } sort(str.begin(), str.end()); //字符串按字母顺序排序 sort(order.begin(), order.end()); if (str == order) { return true; } } return false; } int main() { int n;//输入字典中单词的个数 while (cin >> n) { vector<string>order(n); for (int i = 0; i < n; i++) { cin >> order[i]; } string str; cin >> str; //输入母字符串 int k; cin >> k; //输入要排序的第几个 sort(order.begin(), order.end()); int num = 0; string des = ""; for (int i = 0; i < n; i++) { if (isbrother(str, order[i])) { //比较是不是兄弟单词 ++num; if(num == k){ des = order[i]; } } } cout << num << endl; if(!des.empty()){ cout << des << endl; } } return 0; }