作者popfish (Salvador Dali)
看板ChineseChess
标题Re: [问题] 各棋类对n次局面重覆的处理
时间Thu Sep 16 12:47:40 2010
趁着有些空档发文
回覆l大的棋例
这个盘面,如果红车平中将藉炮抽子换位,我们不会说红方他长将败吧
<兵>─┬─┬-[士][将][车]-┬─┬─┐
│ │ │ │\│/│ │ │ │
├─┼─┼─┼─※─┼─┼─┼─┤
│ │ │ │/│\│ │ │ │
├─┼─┼─┼─┼─┼─┼─┼─┤
│ │ │ │ │ │ │ │ │
├─┼─┼─┼─┼─┼─┼─┼─┤
│ │ │ │ │ │ │ │ │
├-(傌)-┴─┴─┴─┴─┴─┴─┤
│ │
[包][车](砗)-┬─┬─┬-[卒][马][包]
│ │ │ │ │ │ │ │ │
<炮>─┼─┼─┼-(炮)-┼─┼─┼-( )
│ │ │ │ │ │ │ │ │
├─┼─┼-[卒]-┼─┼─┼─┼─┤
│ │ │ │\│/│ │ │ │
├─┼-[卒]-┼-[卒]-┼─┼─┼─┤
│ │ │ │/│\│ │ │ │
└-[卒]-┴-(帅)-┴─┴─┴─┴-(砗)
可是l大下图那个例子,我们却是一定要判长将败,
因为我们人脑知道下图那样将军对棋局没有推展.
程式撰写则需要一个明确判准.
对了,这个盘面是很快地想到就摆,若是讨论正确着法
可能不是一个很好的排局,敬请见谅!
※ 引述《lunalina (牧羊人之月)》之铭言:
: ※ 引述《popfish (Salvador Dali)》之铭言:
: : 我想藉这讨论题目留一个问题,
: : 是在棋规判定程式撰写上,判定长捉负的问题,
: : 假想情况:献卒送红车吃,红车若吃卒则下手被将则败,只能平一步避开,
: : 此情况是否算捉?
: : 若算捉,黑方有两个卒可轮流捉,
: : 先左边的卒捉车,再右边各来回捉一次,下次再右边捉两次,左边捉一次,
: : 这样循环圈过大,容易造成着数内无吃子判和,
: : 事实上黑属长捉应判负,因此似乎该主张限制捉子次数?
: : 还是长捉可改成像西洋棋看盘面有无重复即可判定较佳?
: 如果真的是用着法的循环来判定,那下面这个局面应该就和棋了吧。
:
: 砗炮┬┬将士┬┬┐ 红 黑
: ├┼┼┼士┼┼┼┤ ─ ─
: ├┼┼┼车┼┼┼┤ 砗 车
: ├┼┼┼┼┼┼┼┤ 码 马
: ├┴┴┴┴┴┴┴┤ 相 象
: ├┬┬┬┬┬┬┬┤ 仕 士
: ├┼┼┼┼┼┼┼┤ 帅 将
: ├┼┼┼卒┼┼┼┤ 炮 包
: ├┼┼卒※┼┼┼┤ 兵 卒
: └┴┴┴帅┴┴┴┘ (红方行棋)
:
: 1. 炮八退一 士5退4
: 2. 炮八进一 士4进5
: 3. 炮八退二 士5退4
: 4. 炮八进二 士4进5
: 5. 炮八退三 士5退4
: 6. 炮八进三 士4进5
: 7. 炮八退四 士5退4
: 8. 炮八进四 士4进5
: 9. 炮八退五 士5退4
: 10. 炮八进五 士4进5
: 11. 炮八退六 士5退4
: 12. 炮八进六 士4进5
: 13. 炮八退七 士5退4
: 14. 炮八进七 士4进5
: 15. 炮八退八 士5退4
: 16. 炮八进八 士4进5
: 17. 炮八退九 士5退4
: 18. 炮八进九 士4进5
: 19. 炮八退二 士5退4
: 20. 炮八进二 士4进5
: 21. 炮八退四 士5退4
: 22. 炮八进四 士4进5
: 23. 炮八退六
: 下略,到目前为止连一个着法的循环都还没完成,
: 估计排列组合後将个几百步不成问题。
: 但是车炮在同一个位置交替将,已经连续将十几次了,
: 虽然着法没有循环,但这仍然是长将。
: 焦点应放在捉子的棋子,被捉的棋子(长将也是长捉的一种,长捉将)之间的关系。
: 原PO的问题我想也可以用这个模型解释。
: 所以应不至於有循环着数过多的问题。
: 再举一个接近原PO意思的局面:
: ┌┬┬┬将┬┬┬车 红 黑
: ├┼砗┼※┼┼┼┤ ─ ─
: ├┼砗┼┼┼┼┼┤ 砗 车
: ├┼┼┼┼┼┼┼┤ 码 马
: ├┴┴┴┴┴┴┴┤ 相 象
: ├┬┬┬┬┬┬┬┤ 仕 士
: ├┼┼┼┼┼┼┼┤ 帅 将
: ├┼┼┼┼┼┼┼┤ 炮 包
: ├┼┼┼车┼卒┼┤ 兵 卒
: └┴┴┴┴帅┴┴┘ (红方行棋)
:
: 这局面红任一个车只要在同一位置将第四次就输了,
: 所以是不可能被红方长将凑步成和棋的。
: 两子共长捉的着数比一个子单独长捉的着数多是肯定的,
: 但不至於影响胜负结果。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.117.58
※ 编辑: popfish 来自: 140.113.117.58 (09/16 12:57)