找回密码
 欢迎注册
楼主: KeyTo9_Fans

[原创] 简化的三国杀游戏

[复制链接]
发表于 2018-12-26 10:26:42 | 显示全部楼层
.·.·. 发表于 2018-12-25 19:50
主放空枪后2,1,2,反杀主必输,反杀内,内杀主,又回到1,1,1。

你可能没有理解这款游戏

我08年就玩三国杀了,当然知道三国杀的规则。

主放空枪后2,1,2,反杀主必输,反杀内,内杀主,又回到1,1,1。
这句话有什么问题吗?反杀主后1,1,2,内杀反1,0,2就赢了。反杀内后2,1,1,内若放空枪或杀反,主都必赢了,所以只有杀主变成1,1,1。
回到111是轮到主行动,主杀任何一人,自杀,放空枪都必输,所以按规则主随机选一人杀,内反胜率各1/2。

不确定你是怎么理解我的话的。都说了主杀内后2,1,1,最终变成主行动前1,1,1,主杀内必输。不正是因为1,1,1主放空枪后反必然杀主,主杀任何一人都会被另一个人杀,所以主才会必输吗?1,1,1开局的这步推理我就略过没说了。但是你是如何从我的话中推出我不知道”如果是111的话,主可以放空枪,但反一定会杀主“这个结论的?
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2018-12-26 10:42:52 | 显示全部楼层
staticfield 发表于 2018-12-26 10:26
我08年就玩三国杀了,当然知道三国杀的规则。

主放空枪后2,1,2,反杀主必输,反杀内,内杀主,又回到1 ...

……没有看太仔细
而且跟你上一贴的“比如三人混战局,从A开始按ABC方向依次行动,A,B,C初始为1,1,1,就是都放空枪。”搞混了

主不放空枪输掉的概率为100%并不代表主放空枪之后胜率会大于0
所以主会在这一步直接死机
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2018-12-26 14:30:12 | 显示全部楼层
.·.·. 发表于 2018-12-26 10:42
……没有看太仔细
而且跟你上一贴的“比如三人混战局,从A开始按ABC方向依次行动,A,B,C初始为1,1,1,就 ...

1,1,1开局并不会死机。

如果是主反内局,主不放空枪输掉的概率为100%,主放空枪后会被反杀,所以胜率也是0,无论如何胜率都是0的情况下,按照规则里的”如果放空枪与否,胜利概率都一样大,则不放空枪“,主会随机选一人杀。

如果是3人混战局,我在8L分析过了,不放空枪必输,放空枪的胜率虽然无法计算出来,但是可以证明其大于0,所以会选择放空枪,从而一直循环下去。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2018-12-26 14:31:32 | 显示全部楼层
假定三人混战A,B,C以x,y,z体力开局,A,B,C的胜率为PA(xyz),PB(xyz),PC(xyz)。上面已经证明PA(111)>0。
而PB(111)=P(A放空)*PA(111)+P(A杀B)*0+P(A杀C)*1=PA(111)。
    PC(111)=P(A放空)*PB(111)+P(A杀B)*1+P(A杀C)*0=PA(111)。
又PA(111)+PB(111)+PC(111)=1,所以PA(111)=1/3

1,1,2开局,A不可能攻击B,A若放空枪后B必然攻击C,胜率1/3,A若开局攻击C也是1/3胜率。所以开局A必然攻击C。并且112开局,ABC胜率也都是1/3。

1,2,2开局的3人混战局也不会死机,之前我说的会死机有误。已知1,1,1开局,大家都一直放空枪,并且胜率都是1/3。A攻击C后1,2,1则必输,A攻击B后1,1,2会演变成1,1,1,所以A攻击B胜率为x=1/3。A放空枪的胜率等价于2,2,1开局C的胜率y。A会选择x,y中的大的,因此胜率为MAX(x,y)

不难得到
PA(122)=MAX(P(111),PC(221))
PA(221)=MAX(PC(212),P(111))
PA(212)=MAX(P(111),PC(122))

假设PC(221)>P(111),PC(212)>P(111),PC(122)>P(111),即三人都会放空枪,那么PA(122)=PC(221)=PB(212),PA(221)=PC(212)=PB(122),PA(212)=PC(122)=PB(221),不妨设这三个值为x,y,z
由PA(122)+PB(122)+PC(122)=1得到x+y+z=1,与x,y,z均大于1/3矛盾。
假设PC(221)>P(111),PC(212)>P(111),PC(122)<=P(111),即AB都放空枪,C攻击B后轮到A行动变成112开局 。此时A胜率为1/3,而第一轮A攻击B,胜率也是1/3。这不符合同胜率会选择攻击的规则。所以此假设也不成立。
假设A放空枪,Bv不放空枪,B只能攻击C,此时为1,2,1轮到C行动,也就是112开局,那么依然得到1/3胜率,A放空枪还是违背了规则
所以唯一的可能,就是A开局攻击B,B攻击C,形成111的1/3胜率局面。于是证明了122,212,221开局都是各1/3胜率,并且都会演化成111。

2,2,2开局,若A放空枪胜率大于1/3,那么BC同样也会放空枪,用证明1,1,1开局同样的方法可以证明矛盾所以胜率等于1/3,而A无论是自减1体力还是B或者C,根据上面的结论可以得到最终都是111局面,所以A会随机选择B或C攻击。

1,2,3开局,A放空B会攻击C,所以A会攻击C。231和213也是一样结局。
1,2,4开局,AB都攻击C。同样结局
1,2,5开局,C必赢
2,2,3开局,还是111结局。除了必赢必输和1/3胜率,没有其它后续局面,除非空枪能必赢,或者攻击任何一人都会导致自己必输,否则按规则,肯定选择一个不会打破最终111平衡的人攻击。
2,3,2和3,2,2同理。

看上去三人混战局要么一个人必赢,要么111结局。这和主反内不一样。主反内有些开局无法确定走到111,主随机选一人带走的局面,因为对于有一些主必输的开局,之前主的随机攻击可能导致一个人进入必赢局面。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2018-12-26 20:18:13 | 显示全部楼层
staticfield 发表于 2018-12-26 14:30
1,1,1开局并不会死机。

如果是主反内局,主不放空枪输掉的概率为100%,主放空枪后会被反杀,所以胜率 ...
放空枪的胜率虽然无法计算出来,但是可以证明其大于0

这句有问题
因为我们知道,如果假定此时放空枪的胜率大于0,则没有人可以获胜
这与我们算出来的“假定放空枪的胜率大于0”矛盾
而如果假设此时放空枪胜率等于0,那么依题目要求,这个人不能放空枪
看上去没问题
但是,如果这个人意识到,自己可以类似地假设下一个人放空枪的胜率为0,那么下一个人会必须打枪而不能放空枪——这会导致第一个放空枪胜率大于0
所以我的结论是“死机”

以及,三人混战是不可能出现的……题目中定义只要主不在了,一定是内奸/反贼获胜
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-12-23 05:03 , Processed in 0.022020 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表