五子棋算法--禁手的判断

  区分是不是禁手,不能简单地看是不是走成了“三三”“四四”,而应该是这样的:
1、只要黑方下一子后,形成“连五”,那就不考虑什么禁不禁手了。
2、如果没有形成“连五”,而是形成了“长连”,就肯定是禁手。
3、前两条均不成立的情况下,如果黑方形成了一种局面,令白方无论怎样防守均无可挽回败局,则:如果这种局面是“四三”,则不是禁手,否则是禁手。
4、前三条均不成立的任何形势,均不是禁手。

  换句话说,黑棋只能以“四三”取胜(呵呵,抛开对方眼花的情况不算),如果取胜之道不是“四三”,则是禁手。如果某一局面并不能使黑棋取胜,无论是“三三”也好,“四四”也好,均不算禁手。如下面几个例子,看上去象是禁手,其实不是。

图一,a点不是“三三”禁手,因为横向的“长连”导致黑棋无法因此取胜。
┼┼┼┼┼┼┼┼
┼●a●┼●●┼
┼┼●┼┼┼┼┼
┼┼●┼┼┼┼┼

图二,a点不是“三三”禁手,因为横向上是假活三。
┼┼┼●┼┼┼┼
○┼●a●┼○┼
┼┼┼●┼┼┼┼

图三,a点也不是“三三”禁手,因为如果黑方走a点后,a点上方一点因为有四四禁手不能走,故纵向的黑棋不是活三。
┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼○┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼●●┼┼┼┼┼┼┼┼
┼┼┼┼┼┼●●○┼●┼┼┼┼┼
┼┼┼┼┼●┼●●○┼┼┼┼┼┼
┼┼┼┼○○a○○┼┼┼┼┼┼┼
┼┼┼┼┼┼┼●┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼
┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼┼

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值