微信公众号"算法与编程之美",欢迎关注,及时了解更多此系列文章。

欢迎加入团队圈子!与作者面对面!直接点击!

问题描述

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

解决方案

可以使一乒乓球队为变量,利用for循环列出所有的参赛选手两两比赛情况,根据题目要求去掉不符合条件的情况,再去掉选手比赛情况相冲突的情况即可。

具体代码


for a in ['x','y','z']:

    for b in ['x','y','z']:

        for c in ['x', 'y', 'z']:#三个for循环例举全部情况

            if a != b and b != c and c != a and a != 'x' and c != 'x' and c != 'z':#前三个‘不等于’即可解决选手比赛情况相冲突的情况,后三个‘不等于’去掉不符合题目条件的情况

                print('a和{}比赛,b和{}比赛,c和{}比赛'.format(a,b,c))#输出结果


结语

这个解决方法只要明确方向就比较容易想到,做题时可以先多思考再进行编写代码。

END

实习编辑   |   王文星

责       编   |   周茂林

 where2go 团队



微信号:算法与编程之美          

Python|根据消息推断比赛名单_二维码

长按识别二维码关注我们!

温馨提示:点击页面右下角发表评论,期待您的参与!期待您的转发!