#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;
}