gpt4 book ai didi

c++ - 为德州扑克编写逻辑子底池系统

转载 作者:搜寻专家 更新时间:2023-10-31 01:52:29 24 4
gpt4 key购买 nike

编辑 似乎我对游戏的实际运作方式有不同的 react ,在阅读了官方规则并与众多扑克伙伴交谈后,我想我自己也不知道规则.如有任何澄清,我们将不胜感激。

我正在 MSVC++ 2010 Express 中开发一个小扑克游戏,并且一直在尝试想出一种方法来编写子底池系统。出于某种原因,我无法理解它应该如何工作,并且想知道 SO 是否可以发布一些解决方法。这是德州扑克游戏中可能并且很可能会出现的一种特殊情况。

情况:

玩家 A 以 50 美元的筹码首先采取行动,并决定全押。玩家 B 加注到 150 美元。玩家 C 只有值(value) 70 美元的筹码并决定全押。玩家 D 只有 20 美元并全押。现在,我如何设计一个子底池机制来跟踪所有这些。

据我了解,会发生什么:

玩家 A 用 50 美元创造了主彩池。您将 B 和 C 的 50 美元加在一起,使主彩池达到 150 美元。然后,您将玩家 B 剩余的 100 美元分成 80 美元和 20 美元。然后你为玩家 B 和 C 做一个值(value) 40 美元的子底池(玩家 C 从 70 美元中剩下的),然后你还给玩家 B 的 80 美元,因为没有人可以支付它。玩家 D 的 20 美元赌注进入玩家 B,C 的 40 美元子底池现在值(value) 60 美元。 *(或者这不会被添加?它是否不会被添加到任何赌注中,因为它不能覆盖 50 美元的主底池,如果是这样,那么它们就不会被添加到任何东西中 *

现在,当它向下评估时。如果玩家 A 赢了,他会从玩家 A、B 和 C 那里赢得 150 美元。接下来,玩家 B、C 和 D 将获得值(value) 60 美元的子底池。

如果玩家 B 获胜,他将赢得一切。

如果玩家 C 赢了,他会从玩家 A、B 和 C 那里赢得 150 美元。然后他向玩家 B 和 D 挑战 60 美元。

玩家 D 只能赢得 60 美元,而玩家 A、B 和 C 的底池下降到这种程度时,已经有人赢了。 (取决于这是否被添加到 B 和 C 的底池,因为它不包括主要的 50 美元赌注)

一切都应该这样吗?我很难弄清楚如何跟踪每个赌注和子底池。任何想法或实现它的逻辑方法都会有很大帮助。感谢您的时间。 :-)

我在考虑让每个赌注都有一个唯一的 ID,或者每一轮都有一个 ID,然后将每个赌注添加到一个数组中进行评估,该数组还指向包含玩家信息的容器。我还必须考虑到一些玩家可能处于子底池并且已经在手牌并弃牌,这意味着我也必须跟踪这一点。

最佳答案

在这个例子中,主锅和副锅都计算错误。

规则:规则原则是每个玩家都匹配对手的赌注,因为他留在筹码中。

计算:

1) 首先,我们考虑筹码最少的玩家(全押)。在当前示例中,这是一个拥有 20 美元的玩家 D。

2) 接下来我们从每个玩家 (A,B,C,D) 中加总 20 美元,形成等于 80 美元的主底池,由所有玩家争夺。

3) 玩家剩下的筹码 A – $30, B – $130, C – $50, D – $0

4) 接下来我们考虑第二小的筹码,在当前的例子中,玩家 A 还剩 30 美元。边池 1 等于 $30(A) + $30(B) +$30(C)= $90。玩家 D 没钱了,无法赢得这个边池。

5) 玩家剩下的筹码 A – $0, B – $100, C – $20

6) 边池 2 等于 $20(B) + $20(C)= $40。玩家 A 没钱了,无法赢得这个边池。

7) 玩家 B 还剩 80 美元,这笔钱退还给他。

所以我们最终得到:

主底池 = $80,由所有玩家 A、B、C、D 争夺

边池 1 = $90,由 A、B、C 竞争

边池 2 = $40,由 B、C 竞争

$80 返回玩家 B

关于c++ - 为德州扑克编写逻辑子底池系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12616086/

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