大佬sos 2023-10-15 11:22 采纳率: 76.9%
浏览 41

问题 H: 抓石子游戏终极版(回合制游戏)

问题 H: 抓石子游戏终极版
时间限制: 1 Sec 内存限制: 128 MB
提交: 217 解决: 105
[提交] [状态] [讨论版] [命题人:admin]
题目描述

小明是一个不折不扣的 ZRP(Zealot Round-game Player,回合制游戏狂热玩家),最近他想起了小时候在中原地区玩过的一个游戏。

游戏的规则是这样的:小明和他的小伙伴,两个人手里均有数量充足的小石子,每次游戏开始的时候,两人先后扔出一定数量(不能为零)的小石子组成一堆,然后小明(先手)和他的小伙伴依次从堆中每次取出3个,第一个不能取到3个石子的玩家判输。现在小明和他的小伙伴进行五局三胜制游戏,率先赢得三局者,则游戏结束(后续数据无需处理)。

请你写一个程序,判断每次游戏,谁能赢得最终的胜利,输出游戏结束时的比分。
输入

输入5行数据,每行是以空格分隔的两个正整数m和n,分别表示小明和他的小伙伴先后扔出的石子数量。

输出

游戏结束时的比分,结果为如下六种情况之一
3:0 3:1 3:2 0:3 1:3 2:3
样例输入 Copy

2 5
11 26
16 36
36 14
1000000000 1000000000
样例输出 Copy

1:3

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-10-15 14:49
    关注

    【以下回答由 GPT 生成】

    def calculate_score(input_data):
        scores = [0, 0]  # 小明和小伙伴的分数,初始都为0
        for i in range(5):
            m, n = input_data[i]
            while m >= 3 and n >= 3:
                m -= 3
                n -= 3
            if m < 3 and n >= 3:
                scores[1] += 1
            elif m >= 3 and n < 3:
                scores[0] += 1
    
        if scores[0] > scores[1]:
            return "3:{}".format(scores[0])
        elif scores[0] < scores[1]:
            return "{}:3".format(scores[1])
        else:
            return "{}:{}".format(scores[0], scores[1])
    
    input_data = [(2, 5), (11, 26), (16, 36), (36, 14), (1000000000, 1000000000)]
    calculate_score(input_data)
    


    【相关推荐】


    • 你可以看下这个问题的回答https://ask.csdn.net/questions/7790078
    • 除此之外, 这篇博客: C语言实现八大排序算法详解及其性能之间的中的 名字已经暴露了他的算法,就是往里面插入数据,就拿我们生活中的例子来说,打扑克牌。我们往手里码牌的时候,是一张一张的码,先码一张,抓手心,不需要修改位置,因为只有一张牌,一定是有序的。再接一张,和手里的牌对比大小,调整位置,选择放在它的左边或者右边。然后接着码,又接到一张牌,拿到先和右边的牌比,比右边还大就放到最右边,如果比右边这张小呢,在和左边这张比。同样,我们这里也是这样的,首先我们默认第一个元素,一定是有序,OK吧。然后第二个,元素比较,大,放到左边,小放到右边。然后第三个元素,直到第N个,比它前一个大,继续往前找位置,直到找到对应位置了,就是有序数列了。(当然每次找位置都是在一个有序的序列中找,所以完全可以用二分查找找位置,数据大的话,二分明显快于我们一张一张比) 部分也许能够解决你的问题。

    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    评论

报告相同问题?

问题事件

  • 创建了问题 10月15日

悬赏问题

  • ¥30 靶向捕获探针设计软件包
  • ¥15 react-diff-viewer组件,如何解决数据量过大卡顿问题
  • ¥20 遥感植被物候指数空间分布图制作
  • ¥15 安装了xlrd库但是import不了…
  • ¥20 Github上传代码没有contribution和activity记录
  • ¥20 SNETCracker
  • ¥15 数学建模大赛交通流量控制
  • ¥15 为什么我安装了open3d但是在调用的时候没有报错但是什么都没有发生呢
  • ¥50 paddleocr最下面一行似乎无法识别
  • ¥15 求某类社交网络数据集