题解 | #查找兄弟单词#

查找兄弟单词

http://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68

思路见注释

#针对长度相等,且本身不相同的字串,对比单词中每一个符号的数量是否一样,如果一样,则可以通过交换顺利变成相同。
def is_brother(str1, str2): 
    for i in str1:
        if str1.count(i) != str2.count(i):
            return False
    return True

while True:
    try:
        s = input().split(' ') #接受输入,提取相关参数
        n = int(s[0])
        words = []
        brother = s[-2]
        len_b = len(brother)
        k = int(s[-1])
        
        for i in range(n):#遍历所有单词
            if len(s[i+1]) == len_b:#判断长度是否相等
                if s[i+1] != brother:#判断本身是否完全相同
                    if is_brother(s[i+1],brother):#如果满足上述条件,再判断其是否具备兄弟特征
                        words.append(s[i+1])#是则提取出来
#        print(words)
        words = sorted(words)#按字典排序
    #输出
        print(len(words))
        if k < len(words):
            print(words[k-1])
    except:
        break
        
全部评论
最后k = len(words)的场景也可以吧,是不是漏掉了?
点赞 回复 分享
发布于 2022-04-09 02:07

相关推荐

10-24 13:36
门头沟学院 Java
Zzzzoooo:更新:今天下午有hr联系我去不去客户端,拒了
点赞 评论 收藏
分享
点赞 1 评论
分享
牛客网
牛客企业服务