题解 | #查找兄弟单词#
查找兄弟单词
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个单词和编号的区别