c语言怎么解决24点游戏问题


这篇文章主要讲解了“c语言怎么解决24点游戏问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“c语言怎么解决24点游戏问题”吧!你有 4 张写有 1 到 9 数字的牌。你需要判断是否能通过 */+-() 的运算得到 24。示例 1:示例 2:注意:除法运算符 / 表示实数除法,而不是整数除法。例如 4 / (1 – 2/3) = 12 。每个运算符对两个数进行运算。特别是我们不能用 - 作为一元运算符。例如,[1, 1, 1, 1] 作为输入时,表达式 -1 - 1 - 1 - 1 是不允许的。你不能将数字连接在一起。例如,输入为 [1, 2, 1, 2] 时,不能写成 12 + 12 。在 24点 游戏中,总共有 ✖️ 4 ✖️ ✖️4 ✖️ ✖️ 4 = 9126 种情况,如果需要给定一列数,判断其是否可以通过以上运算满足结果为 24 的话,只需要枚举验证即可。一般的解法就是枚举验证即可。今天我在 LeetCode 的讨论区看到了一段让人 虎躯一震 的代码。提交之后的结果是这样的。为什么可以这样?因为在 24点 游戏中,四个数字,每个数字的取值区间为 [ 1 – 9 ], 无重复组合总数为 495 组,其中以下 92 组为无解组合:1111, 1112, 1113, 1114, 1115, 1116, 1117, 1119, 1122, 1123, 1124, 1125, 1133, 1159, 1167, 1177, 1178, 1179, 1189, 1199, 1222, 1223, 1299, 1355, 1499, 1557, 1558, 1577, 1667, 167 香港云主机7, 1678, 1777, 1778, 1899, 1999, 2222, 2226, 2279, 2299, 2334, 2555, 2556, 2599, 2677, 2777, 2779, 2799, 2999, 3358, 3388, 3467, 3488, 3555, 3577, 4459, 4466, 4467, 4499, 4779, 4999, 5557, 5558, 5569, 5579, 5777, 5778, 5799, 5899, 5999, 6667, 6677, 6678, 6699, 6777, 6778, 6779, 6788, 6999, 7777, 7778, 7779, 7788, 7789, 7799, 7888, 7899, 7999, 8888, 8889, 8899, 8999, 9999所以只需要将这 92 种情况进行 Unicode 编码,然后对于给定输入,排序转为字符串后查询是否在这 92 种情况的编码中。感谢各位的阅读,以上就是“c语言怎么解决24点游戏问题”的内容了,经过本文的学习后,相信大家对c语言怎么解决24点游戏问题这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是开发云,小编将为大家推送更多相关知识点的文章,欢迎关注!

相关推荐: 电脑开机提示一分钟后重启怎么办

这篇文章主要介绍电脑开机提示一分钟后重启怎么办,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!解决方法/ 香港云主机步骤一:重置服务1.调出运行窗口,输入CMD命令后回车。2.在打开的界面中输入netsh winsock reset后回车…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 07/13 21:35
下一篇 07/13 21:35

相关推荐