问题描述:

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

解析:

这个题目看似简单,但其实需要仔细分析一下怎么做。怎么把给定的条件通过代码表达出来,并且得出唯一的结论。

整体思想是,对于a, b和c三个球员,每个对应x, y和z其中的一个,那么在这所有的27种情况中,去掉a不和x比以及c不和x, z比这三种,以及防止a,b和c对应的同一个对手的情况即可。去除掉这六种情况,输出满足条件的所有情况。

所以实现需要三个for循环,以及用if去掉六个并列条件即可。

代码:

解法1:

此解法结构比较整齐,三个for循环,六个if的并列条件:

for a in range(ord('x'),ord('z')+1):for b in range(ord('x'), ord('z') + 1):for c in range(ord('x'), ord('z') + 1):if a!=ord('x') and c!=ord('x') and c!=ord('z') and a!=b and a!=c and b!=c:print('a vs %s' % chr(a))print('b vs %s' % chr(b))print('c vs %s' % chr(c))

解法2:

跟解法1一个思想,不过没有第一个整齐:

for a in range(ord('x'),ord('z')+1):for b in range(ord('x'), ord('z') + 1):if a!=b:for c in range(ord('x'), ord('z') + 1):if a!=c and b!=c:if a!=ord('x') and c!=ord('x') and c!=ord('z'):print('a vs %s' % chr(a))print('b vs %s' % chr(b))print('c vs %s' % chr(c))

总结:

对于这种个数较少的匹配,用简单的枚举即可,排除掉给定的条件,以及去掉重复对手的情况即可。

【python实战】二:乒乓球比赛对手问题相关推荐

  1. 『矩阵论笔记』线性判别分析(LDA)最全解读+python实战二分类代码+补充:矩阵求导可以参考

    线性判别分析(LDA)最全解读+python实战二分类代码! 文章目录 一.主要思想! 二.具体处理流程! 三.补充二中的公式的证明! 四.目标函数的求解过程! 4.1.优化问题的转化 4.2.拉格朗 ...

  2. Pycharm 金融Python实战二:用Python编写一个金融计算器——编写函数 调用命令 实例年金现值 利率换算 净现值法 投资回报期 内部收益率及其法则(带程序和结果)

    用Python编写一个金融计算器 1.编写不需要保存的Python函数 编写简单的计算未来现金的现值的数学公式 def pv_f(fv,r,n):return fv/(1+r)**n print(pv ...

  3. python实战二:使用CSV数据绘制带数据标志的折线图(matplotlib)

    背景: 自动获取缺陷管理系统中的bug趋势统计数据,并保存到CSV中,读取CSV数据并绘制带数据标志的折线图,并保存为png图片 下面代码仅实现"读取CSV数据并绘制带数据标志的折线图,并保 ...

  4. Python实战项目(二)写一个枪林弹雨的辅助外挂

    Python实战项目(二)用python写枪战游戏-枪林弹雨的辅助程序 声明:本文章纯属个人学习所作,切勿用于非法渠道.转载请注明原文链接. 最近闲得无聊,在qq微端上找游戏玩,偶然看见一个枪战游戏, ...

  5. 【Python】Python实战从入门到精通之二 -- 教你使用Python中列表操作

    本文是Python实战–从入门到精通系列的第二篇文章: [Python]Python实战从入门到精通之一 – 教你深入理解Python中的变量和数据类型 Python实战从入门到精通之二 – 教你使用 ...

  6. python游戏开发框架_用Python和Pygame写游戏-从入门到精通(实战二:恶搞俄罗斯方块1)...

    游戏是为了什么而存在的?Bingo,是为了娱乐~ 在这个最高主题之前,技术啥的什么都无所谓! 前一段时间,有位姓刘的网友用Pygame写了个俄罗斯方块,在用py2exe打包的时候遇到一些问题,和我交流 ...

  7. python用户界面游戏_用Python和Pygame写游戏-从入门到精通(实战二:恶搞俄罗斯方块2)...

    我们接着来做这个整死人不偿命的俄罗斯方块. 代码组织和名词约定 上一次我们稍微整理了一下游戏运行的框架,这里需要整理一下python代码的框架,一个典型的pygame脚本结构如下: 其中,lib为py ...

  8. PTA Python函数题 7-1 模拟乒乓球比赛 (20 分)

    7-1 模拟乒乓球比赛 (20 分)-函数版 中国选手与日本选手进行乒乓球比赛,每局先得11分者赢得此局,整个比赛5局3胜,如某队获胜达到3局,则赢得此场比赛. 假设中国选手每一分获胜的概率为m,(含 ...

  9. Python实战教程专栏完整目录

    Python实战教程专栏完整目录 专栏说明如下 完整专栏目录如下 专栏说明如下 内容:Python实战教程 数量:280篇博文(2023年3月17日截止) 更新时间至:2023年3月17日(后续加上去 ...

  10. 精选100个Python实战项目案例,送给零基础小白的你

    前言 随着 Python 语言的流行,越来越多的人加入到了 Python 的大家庭中.为什么这么多人学 Python ?我要喊出那句话了:"人生苦短,我用 Python!",正是因 ...

最新文章

  1. 云计算赋能人工智能,未来的红利在哪?
  2. VMware三种网络模式根本区别
  3. NoSQL架构实践(二)——以NoSQL为主
  4. 利用python下载网页到本地(python3)
  5. File类概述和构造方法
  6. os.system如何传参
  7. 别找了,你要的中国民间神话故事在这里!
  8. php记住用户名功能,php使用cookie实现记住用户名和密码实现代码
  9. 高斯分布matlab程序,生成高斯分布的matlab程序
  10. MCMC采样算法理解
  11. 路由器命令级别和用户级别
  12. Linux递归统计当前目录下普通文件的数量
  13. 【数据压缩】H.264码流分析
  14. java io 和nio 区别_java IO和NIO区别
  15. 高职大学计算机专业老师试讲面试,毫无经验应聘高职院校教师怎么准备试讲和面试...
  16. 计算机上没有保存任何数据源,Excel数据表找不到链接莫着急——三点操作重建数据的源文件-查看源文件...
  17. 10000个小时-------马尔科姆·格拉德威尔
  18. 2021最新 JDK17 之 JAVA基础 Stream 流
  19. 自然语言处理(NLP)的一般处理流程!
  20. 主编编辑器如何在文章下方插入往期回顾?

热门文章

  1. 2019CBA全明星周末举行正赛 南方明星队获胜
  2. Cobalt Strike(cs) 联动 msf
  3. 【Java二十周年】十年,二十年
  4. 摄影构图学83年绝版_常用的摄影构图之点线面
  5. 计算机科学类期刊排名,计算机学术期刊排名:Computer Science Journal Ranki
  6. 亚马逊测评账号关联因素有哪些?
  7. linux电脑关机后自动重启,Linux系统关机/重启
  8. CDH集成ES MasterNotDiscoveredException问题解决
  9. C# 方法练习-制作简易飞行棋游戏
  10. 1的阶乘加到100的阶乘