️小猪佩蕊 2019-11-23 20:20 采纳率: 100%
浏览 262
已采纳

各位大佬,这个问题怎样用python语言解决哇?

两个乒乓球队进行比赛,各出三人,甲队为x,y,z三人,乙队为a,b,c三人。已抽签决定比赛名单,有人向队员打听比赛的名单,x说他不和a比,z说他不和a,c比,编程找出有几种打法?

Traceback (most recent call last):
File "D:/python 课程资料以及作业/调试.py", line 13, in
if r[0]!= ('a', 'x') and r[2]!= ('a', 'z') and r[2]!= ('c', 'z'):
TypeError: 'zip' object is not subscriptable

  • 写回答

1条回答 默认 最新

  • threenewbee 2019-11-24 00:50
    关注
    # -*- coding: UTF-8 -*-
    
    def pl(ch, seed = ''):
        if len(seed) == len(ch):
            yield seed
        else:
            for c in ch:
                if not(c in seed):
                    for x in pl(ch, seed+c):
                        yield x
    tema = 'abc'
    temb = 'xyz'
    vs = list(map(lambda x : zip(x, temb), list(pl(tema))))
    for r in vs:
        if r[0] != ('a', 'x') and r[2] != ('a', 'z') and r[2] != ('c', 'z'):
            print(r)
    

    [('c', 'x'), ('a', 'y'), ('b', 'z')]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?