gpt4 book ai didi

algorithm - 卡牌算法游戏

转载 作者:塔克拉玛干 更新时间:2023-11-03 02:37:41 26 4
gpt4 key购买 nike

我正在解决以下问题并采用蛮力方法但无法提出一个好的解决方案。问题如下:

有2*N张卡片。你和你的对手将它们分开(N 张给你,N 张给他们)。您确切地知道他们有什么牌以及他们打牌的顺序。

游戏规则如下:前N/2轮,牌大者胜,后N/2轮,牌小者胜。

根据这些规则和对手打牌的顺序,您最多可以获得多少胜利。

示例:

你有牌:2、5、6、7。你的对手有牌:1、8、4、3 并按顺序打出它们。

你能得到的最高分数是 2,因为你对他们的 1 打 7,输掉第 2 和第 3 轮,然后在最后一轮打 2 赢。

我的想法:把你的牌分成两堆,编号大的和编号小的。然后找出最佳匹配。

伪代码/算法思想将不胜感激。

编辑:共有 N 轮。前N/2轮:牌大者胜。最后N/2轮:小牌获胜。 N 必须是偶数。

最佳答案

我建议:

  • 将你的牌分成大/小两堆
  • 对它们进行排序
  • 按值(value)对对手的大牌进行排序(第一轮)
  • 对手牌从大到小:
    如果您剩余的最大值低于对手牌,则打出最低的牌(输)
    否则打你最大的牌(赢)

类似于 堆,反转顺序

关于algorithm - 卡牌算法游戏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34257975/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com