#include <stdio.h>
#include <string.h>
int main()
{
char inputWord[1000][10] = {0};
char inputOriginWord[10] = {0};
int n;
int k;
char brotherWord[1000][10] = {0};
int brotherNum = 0;
scanf("%d", &n);
for(int i = 0; i < n; i++)
{
scanf("%s", inputWord[i]);
}
scanf("%s", inputOriginWord);
scanf("%d", &k);
/* 查找兄弟单词 */
for(int i = 0; i < n; i++)
{
int num = 0;
int flag = 0;
char temp[11] = {0};
strcpy(temp, inputWord[i]);
for(int m = 0; m < strlen(inputOriginWord); m++)
{
for(int j = 0; j < strlen(inputWord[i]); j++)
{
if(inputOriginWord[m] == temp[j])
{
/* 过滤单词相同情况, 例如abc 和abc */
if(m != j)
{
flag = 1;
}
temp[j] = '!';
num++;
break;
}
}
}
/* 存储兄弟单词 */
if(num == strlen(inputOriginWord) && num == strlen(inputWord[i]) && flag)
{
// printf("brother = %s\n", inputWord[i]);
strcpy(brotherWord[brotherNum++], inputWord[i]);
}
}
for(int i = 0; i < brotherNum; i++)
{
for(int j = i + 1; j < brotherNum; j++)
{
int cmp = strcmp(brotherWord[i], brotherWord[j]);
if(cmp > 0)
{
char temp[10] = {0};
strcpy(temp, brotherWord[i]);
strcpy(brotherWord[i], brotherWord[j]);
strcpy(brotherWord[j], temp);
}
}
}
printf("%d\n", brotherNum);
printf("%s", brotherWord[k-1]);
return 0;
}