python 算24 代码
直接上代码
借鉴了https://www.cnblogs.com/greatfish/p/7580621.html的代码,做了些优化,并增加了几种括号的排列组合。
import numpy as np
from itertools import permutations# encoding=utf-8
a = int(input("请输入第1个数字:"))
b = int(input("请输入第2个数字:"))
c = int(input("请输入第3个数字:"))
d = int(input("请输入第4个数字:"))
list1 = [a, b, c, d]
p=[c for c in permutations(list1,4)]symbols = ["+", "-", "*", "/"]list2 =[] #算出24的排列组合的列表flag=Falsefor n in p:one,two,three,four=nfor s1 in symbols:for s2 in symbols:for s3 in symbols:if s1+s2+s3=="+++" or s1+s2+s3=="***":express = [ "{0} {1} {2} {3} {4} {5} {6}".format(one, s1, two, s2, three, s3, four)] #全加或者乘时,括号已经没有意义。else:express = [ "(({0} {1} {2}) {3} {4}) {5} {6}".format(one, s1, two, s2, three, s3, four),"({0} {1} {2}) {3} ({4} {5} {6})".format(one, s1, two, s2, three, s3, four),"(({0} {1} ({2} {3} {4})) {5} {6})".format(one, s1, two, s2, three, s3, four),"{0} {1} (({2} {3} {4}) {5} {6})".format(one, s1, two, s2, three, s3, four),"{0} {1} ({2} {3} ({4} {5} {6}))".format(one, s1, two, s2, three, s3, four)]for e in express:try:if abs(eval(e)-24)<0.01:list2.append(e+" = 24")flag=Trueexcept ZeroDivisionError:passlist3=set(list2) #去除重复项for c in list3:print(c)if flag==False:print("无法算出")
python 算24 代码相关推荐
- 用Python算24点
小外甥女的课后作业是算24点,看了一下题目,发现都挺难的,像下面这些: 7 7 3 3 8 8 3 3 5 5 5 1 1 5 7 10 2 5 5 10 只能用加减乘除,算出24点. 发现心算不容易 ...
- python算24点穷举法_关于24点去重的算法?
=== 4月12日更新 === === 先给结论吧 === 花了近一周时间用JavaScript完成了24点去重算法,源码提交到了github上:auntyellow/24 ,可以在线试:gives ...
- python算24点穷举法_24点游戏7节课–第1节-游戏介绍与基本算法 | 学步园
这仅仅是一个控制台(DOS窗口下)的小游戏--有人欢喜有人烦了.欢喜的是因为可以专心于游戏逻辑自身过程,就算你只学过C++简单的屏幕输入输出(cin.cout ),乃至换用java,C#也可以写这个小 ...
- python二十四点_Python秒算24点,行还是不行?
周末闲来无事,看到隔壁家的老王在和隔壁家的媳妇玩24点,就进屋看了看.发现老王是真不行啊,那不行,这也不行. 就连个24点都玩不过他媳妇,给他媳妇气的,啥都不能满足,这不能,那也不能. 我坐下来和他媳 ...
- Python写个小游戏:速算24点(上)
文章目录 前言 速算24点 1. 玩法简介 2. 游戏流程 3. 搭建游戏界面 1). 基本界面 2). 洗牌.发牌 洗牌 发牌 3). 计时器 4). 玩家输入公式(答案) StringVar类 按 ...
- Python写个小游戏:速算24点(下)
文章目录 前言 速算24点 1. 玩法简介 2. 游戏流程 3. 剩下的部分 1). 关卡 / 分数信息 IntVar类 2). 提示按钮 图片 按钮 3). 重新发牌 4. 让电脑计算24点 1). ...
- 100个python算法超详细讲解:抢30游戏
[100个python算法超详细讲解]@谷歌学术 1.问题描述 由两个人玩"抢30"游戏,游戏规则是:第一个人先说"1"或"1,2",第 二 ...
- c语言算24点答案,C语言-纸牌计算24点小游戏
C语言实现纸牌计算24点小游戏 利用系统时间设定随机种子生成4个随机数,并对4个数字之间的运算次序以及运算符号进行枚举,从而计算判断是否能得出24,以达到程序目的.程序主要功能已完成,目前还有部分细节 ...
- python以什么表示代码层次_在Python中,采用代码缩进和( )区分代码之间的层次。_学小易找答案...
[填空题]29 号元素 Cu 基态时的电子排布式为 ___ __ ,该元素在周期表中位于 __ _ 周期. __ __ 族. [单选题]"我要努力实现梦想,以弥补小时候吹过的牛"小 ...
- python 常忘代码查询 和autohotkey补括号脚本
autohotkey更新2018-08-03,9点01 python ;把大写禁用了,因为确实基本不用.`表示删除,caplock+ijkl可以控制光标 SetCapsLockState , Alwa ...
最新文章
- 所有类是object的子类,但是又可以继承一个其他类解析
- 让程序员头疼的文档问题怎么破?试试活文档
- VMware Identity Manager 与CAS, Keycloak的集成
- python画球面_用Matplotlib绘制球面网格
- 爬虫解析利器PyQuery详解及使用实践
- c#oracle数组超出,c# – ODP.net填充数据集时的Oracle Decimal Number精度问题.异常:算术运算导致溢出...
- NOIP模拟测试7「方程的解·visit」
- Java CharArrayReader mark()方法与示例
- Library not found for -lPods-Unity-iPhone 的解决方法
- mysql效率索引_mysql下普通索引和唯一索引的效率对比
- MyCat 数据库分片极简体验
- Objective-C Fast Enumeration 的实现原理
- 20191223每日一句
- LNMP自动部署脚本
- 万网空间PHP 伪静态化,disuczx版块URL伪静态目录化设置方法
- FastReport.NET v2022.2.7
- EI/scopus推荐-智能交通与智慧城市会议
- 关于Sql Server2012(.net framework 3.5安装)安装问题
- Agilent E3649A via RS232 to PC 通信终于知道错哪了
- python xlrd 写入已有的excel并保留原excel格式