题解 | #查找兄弟单词#
查找兄弟单词
https://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68
import sys
s_list = input().split(' ')
#求出字典里有几个单词
n = int(s_list[0])
#将字典里的单词划分出来
list1 = []
for i in range(1,n+1):
list1.append(s_list[i])
#得到原始单词和需要输出的兄弟单词的编号
s = s_list[n+1] #s为原始单词
num = int(s_list[n+2]) #num为编号
#判断是否为兄弟单词的函数
def word_bro (a,b):
#a为原始单词,b为需要判别是否为兄弟单词的单词
sign = 0
#当长度一样时
if len(a) == len(b):
#并且a与b不相等
if a != b:
l = len(a)
for i in range(0,l):
#判断a中的每个字符在b中是否存在并且每个字符出现的次数在a和b中相同
if a[i] in b and a.count(a[i]) == b.count(a[i]):
sign = 1
else:
sign = 0
break
else:
#a与b相等
sign = 0
else:
#a与b长度不相等
sign = 0
return sign
list2 = []
#判别
for x in list1:
#如果是兄弟单词
if (word_bro(s,x)) == 1:
list2.append(x)
else:
continue
#将list2进行排序
list2.sort()
print(len(list2))
if num <= len(list2):
print(list2[num-1]) #注意第K个单词和编号的区别

