python3练习100题——022
为了周末轻松点,多做一些题。
原题链接:http://www.runoob.com/python/python-exercise-example22.html
题目:两个乒乓球队进行比赛,各出三人。甲队为a,b,c三人,乙队为x,y,z三人。已抽签决定比赛名单。有人向队员打听比赛的名单。a说他不和x比,c说他不和x,z比,请编程序找出三队赛手的名单。
分析:这道题可以参考练习题001,都可以转换成排序问题。
题目只要求解a,b,c与x,y,z的对应关系,就可以看做abc求对应的xyz的顺序。可以用到permutations函数。
我的代码:
def fun(): for i in permutations(['x','y','z'],3): #枚举出所有xyz的排序 if (i[0]!='x' and i[2]!='x' and i[2]!='z'): #卡xyz顺序的条件 print("a:%s,b:%s,c:%s" %(i[0],i[1],i[2]))
思考:
关键就在把对应关系,想成顺序来求,这样就有个初步的想法——用循环,且只考虑xyz的顺序。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步