【2011.10.29模拟】24点游戏题解
题目描述
24点游戏是一个非常有意思的游戏,很流行,玩法很简单:给你4张牌,每张牌上有数字(其中A代表1,J代表11,Q代表12,K代表13),你可以利用数学中的加、减、乘、除以及括号想办法得到24,例如:
((A* K)-J) * Q等价于((1 * 13)-11) * 12=24
加减乘不用多说了,但除法必须满足能整除才能除!这样有一些是得不到24点的,所以这里只要求求出不超过24的最大值。
输入
输入第一行N(1<=N<=5)表示有N组测试数据。每组测试数据输入4行,每行一个整数(1到13)表示牌值。
输出
每组测试数据输出一个整数,表示所能得到的最大的不超过24的值。
样例输入
3
3
3
3
3
1
1
1
1
12
5
13
1
样例输出
24
4
21
题解:
题目主要讲的是给n组数据,求他们小于等于24的最大组合(就是单纯的二十四点)。
搞清楚题目大意,我们就把问题简化一下:
法1:
全排列+挨个枚举。
O(44 * 53 *5)
实际上可能更长,所以这不是重点。
法2:
把这个二十四点转换成四个数和并成一数,每次合并把两个数合成一个数,和并分五种来枚举:
设合并的两数为i,j。
- i+j
- i-j
- j-i(别忘了这个)
- i*j
- i%j=0就i/j j%i=0就j/i(注意除数不能等于0)
合并的方法:
i=1~3
j=i~4
if(a[i]和a[j]有任意一个以前合并过就不进行合并)
合并3次后就判断,因为合并方法,所以最后的答案一定在a[1] (可以自己想想)。
然后就好了。
Python数据分析与挖掘
【2011.10.29模拟】24点游戏题解相关推荐
- 679. 24 点游戏
链接:679. 24 点游戏 题解: https://leetcode-cn.com/problems/24-game/solution/ying-gai-shi-man-hao-li-jie-de- ...
- Java黑皮书课后题第3章:**3.24(游戏:抽牌)编写程序,模拟从一副52张的牌中抽一张牌,程序应显示牌的大小、花色
**3.24(游戏:抽牌)编写程序,模拟从一副52张的牌中抽一张牌,程序应显示牌的大小.花色 题目 题目概述 运行示例 破题 代码 题目 题目概述 **3.24(游戏:抽牌)编写程序,模拟从一副52张 ...
- 英雄远征(9:20--11:29)30级体验
英雄远征(9:20--11:29)30级体验 1级任务指引提升等级,体验游戏. 2级任务指引领取装备礼包.(亮点) 3级任务指引领取武器(亮点) 4级任务指引玩家领取武器并使用.(亮点) ...
- python游戏开发步骤_详解Python GUI版24点游戏制作过程
本文作者为浙江温州永嘉县教师发展中心应根球老师,电子邮箱:ycicada@163.com. 传统用扑克牌算24点游戏用于小学低中段学生训练四则运算效果不错,也可用于防止老年痴呆.本项目模拟传统扑克24 ...
- 按冯诺依曼提出的计算机类型,2011年12月24日计算机一级考试题目广西
<2011年12月24日计算机一级考试题目广西>由会员分享,可在线阅读,更多相关<2011年12月24日计算机一级考试题目广西(13页珍藏版)>请在人人文库网上搜索. 1.全国 ...
- 1.16 24点游戏
24点游戏的解决办法,也是采取穷举法的思路,4个数,有4!=24中排列的方法,然后3个操作符号,有4×4×4 = 64种结果,再加上括号,有5种结果,于是,每4个数有24*66*5 = 7680中结果 ...
- 用python代替人脑运算24点游戏
前言 文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:老方玩编程 PS:如有需要Python学习资料的小伙伴可以加点击下方链 ...
- 详解Python GUI版24点游戏制作过程
本文作者为浙江温州永嘉县教师发展中心应根球老师,电子邮箱:ycicada@163.com. 传统用扑克牌算24点游戏用于小学低中段学生训练四则运算效果不错,也可用于防止老年痴呆.本项目模拟传统扑克24 ...
- python二十四点_python实现24点游戏(地球上最短的24点游戏代码?)
牛bi要挑大的吹,否则看帖的人没几个. 所谓24点游戏,就是4个数字和算符的排列组合: 四个里挑两个P(4,2) 计算:四个算符 四个里剩余两个+计算结果,三个里挑两个P(3,2) 计算:四个算符 经 ...
最新文章
- Unity3D笔记 GUI 二 、实现选项卡一窗口
- golang NewRequest gorequest 实现http请求
- 用户层CS段描述符信息
- SQL Server2005 使用FOR XML选项进行字符串的串联聚合
- 在Windows 10 系统上启用Hyper V遇到的错误:0x800f0831
- [蓝桥杯][算法提高VIP]最小乘积(提高型)-排序
- android接口类命名规范_超全面的UI基础设计规范来啦,还不收藏 ~
- [概率论]如何通俗地理解“最大似然估计法”?
- centos7 离线安装自签名harbor
- 第五章---引入复制后的数据库架构
- java 001 002_69期-Java SE-019-实用类-2-001-002
- opencv图像处理8-卷积
- 《Adobe Fireworks CS5中文版经典教程》——1.2 工具面板
- Latex 只在首页添加页眉页脚 修改局部字体大小
- 【基于狂神Docker双响曲】:1、Docker入门及常用部署
- 05-SparkRDD原理和编程接口
- 基于多相滤波器的数字信道化算法详解(Python, Verilog代码已开源)
- 趣图 | 程序员的白天 vs 夜晚?
- .Net开发 开发工具使用vs C盘占用空间不断增大
- 杨辉三角队列c语言程序,C语言完整队列 与链式队列实现杨辉三角