Python---堆里有16颗豆子,有两个玩家依次取豆

news/2024/11/23 10:02:26/

题目:
堆里有 16 颗豆子,有两个玩家(假设一个玩家是电脑) 。每个玩家都可以从堆中的 16 颗豆子中取出 1 颗,2 颗或者 3 颗豆子。每个玩家在每回合中必须从堆中取出一定数目的豆子。玩家轮流取出豆子,取到最后 一颗豆子的玩家是输家。 思路: 写一个人取豆子的函数 ; 帮电脑设计一个算法,实现取豆子的函数 ; 在主程序中进行输流调用,谁最后拿到 1 粒豆子谁就输。

源代码:

import random
#人类取豆子
def people(n):print('-' * 30)while 1:pick_people = int(input("人类玩家取出豆子数: "))if (1 <= pick_people <= 3):breakelse:print("每次取出的豆子数应该属于(1,2,3),请重新输入!")continueprint("豆子剩余数量:", n - pick_people)return (n - pick_people)
#电脑取豆子
def computer(n):print('-' * 30)pick_computer = random.randint(1,3)print("电脑玩家取出豆子数:", pick_computer)print("豆子剩余数量:", n - pick_computer)return (n - pick_computer)
def main():total = 16print("豆子的总数为:",total)while 1:total = people(total)if total <= 0:print("电脑赢!!!")breaktotal = computer(total)if total <= 0:print("人类赢!!!")break
main()

http://www.ppmy.cn/news/695107.html

相关文章

给定任何两种遍历序列能否确定唯一一颗二叉树

给定任何两种遍历序列能否确定唯一一颗二叉树 我们知道确定一颗二叉树&#xff0c;必须要确定它的中序遍历&#xff0c;再加上层次遍历&#xff0c;后序遍历&#xff0c;前序遍历三个中间的一种。为什么这样说呢接下来可以验证一下&#xff0c;这里强烈推荐一下生成二叉树的网…

复制一颗二叉树(java语言)

复制一颗二叉树&#xff08;java语言) 在一棵二叉链表表示的二叉树中&#xff0c;复制一颗二叉树&#xff08;利用java编程语言&#xff09; 我的求解方法&#xff1a;首先创建一个泛型的数组&#xff0c;目的是为了存放二叉树&#xff08;新复制&#xff09;的标明空子树的先…

判定两颗二叉树是否相同

题目描述&#xff1a; 给定两个二叉树&#xff0c;编写一个函数来校验它们是否相同。如果两个树在结构上相同&#xff0c;并且结点具有相同的值&#xff0c;则认为它们是相同的。 算法思路&#xff1a; 利用深度优先搜索&#xff0c;如果两个二叉树都为空&#xff0c;则两个…

【面试智力题】一楼到十楼的每层电梯门口都放着一颗钻石,钻石大小不一。你乘坐电梯从一楼到十楼,怎样拿到最大的一颗?

问题描述 一楼到十楼的每层电梯门口都放着一颗钻石&#xff0c;钻石大小不一。你乘坐电梯从一楼到十楼&#xff0c;每层楼电梯门都会打开一次&#xff0c;只能拿一次钻石&#xff0c;问怎样才能拿到最大的一颗&#xff1f; 解答思路 开放性试题&#xff0c;没有固定答案 1.37%法…

图解GPS原理 为什么需要4颗卫星才能定位,而不是3颗

转载https://blog.csdn.net/hugohong/article/details/43191597 GPS 是英文Global Positioning System&#xff08;全球定位系统&#xff09;的简称&#xff0c;而其中文简称为“球位系”。GPS是20世纪70年代由美国陆海空三军联合研制的新一代空间卫星导航定位系统 。 欧盟和…

算法:如何判断两颗二叉树是否相等

1.两可二叉树相等是指这两颗二叉树有着相同的结构&#xff0c;并且在相同位置上的结点有相同的值。 2.分析解答&#xff1a;两颗二叉树相等&#xff0c;节点的值相等&#xff0c;左右子树也完全相等&#xff0c;可以使用递归方法实现 3.代码如下&#xff1a; class Bitree():d…

GPS定位为什么需要4颗以上卫星?

二话不说&#xff0c;直接上图 首先可以看到两个球面可以确定一个圆&#xff0c;三个球面&#xff08;一个球面一个圆&#xff09;可以确定两个点。如上图所示。排除不在地面上的位置&#xff0c;就可以准确地得到我们的位置信息。 假设t时刻在地面待测点上安置GPS接收机&…

开源自动化测试框架介绍

开源自动化测试框架介绍 一、Junit&#xff08;白盒测试、API自动化、UI自动化&#xff09;【官网】【简介】【使用场景】 二、Selenium&#xff08;Web自动化、爬虫&#xff09;【官网】【简介】【使用场景】 三、TestNG&#xff08;白盒测试、API自动化、UI自动化&#xff09…