#include <bits/stdc++.h>
using namespace std;
//思路:1、判断是否兄弟单词{1单词不能相同;2满足单词长度一样;3满足排序后单词相同;};2、将兄弟单词加入字符串数组中,输出数组长度;3、将兄弟单词字符串数组排序后输出第k位。
bool isBrother(string s1, string s2) {
if (s1.length() == s2.length() ){
if(s1 == s2)
return false;
sort(s1.begin(), s1.end());
sort(s2.begin(), s2.end());
if (s1 == s2)
return true;
}
return false;
}
int main() {
int n;//单词数量
cin >> n;
vector<string> str(n);//输入n个单词的字符串数组
for (int i = 0; i < n; i++)
cin >> str[i];
string x;//要查找的x单词
cin >> x;
int k;//要查找的第k个兄弟单词
cin >> k;
vector<string> bro;//符合兄弟单词的字符串数组
for (int i = 0; i < n; i++) {
if (isBrother(str[i], x))
bro.push_back(str[i]);
}
sort(bro.begin(), bro.end());
cout << bro.size() << endl;
if(k<=bro.size())
cout << bro[k - 1] << endl;
return 0;
}
// 64 位输出请用 printf("%lld")