华为机试—围棋吃子(下围棋)判决(高级题160分:深度优先遍历)(图文吐血整理)

本文介绍了一道华为机试题目,涉及围棋吃子规则和深度优先遍历算法的应用。通过分析棋盘状态,判断下棋是否合法,以及是否产生吃子情况。利用DFS检查棋子的气,确定棋局变化后的吃子数量,从而解决题目中的问题。
摘要由CSDN通过智能技术生成

题目:

围棋中,一个棋子在棋盘上,与它直接紧邻的空点是这个棋子的“气”,棋子直接紧邻的点上,如果有同色妻子存在,则它们便相互组成一个不可分割的整体,它们的“气”也应一并计算。如果一个或一片棋子的“气”为0,那它们将被吃掉。

1. 一个棋子的情况,如下左图,白棋右侧还有一个空点,此时白棋气为1,不会被吃掉。当黑棋在此空点下棋后,白棋气为0,将被吃掉。


2. 一片棋子的情况,如下图,左下角的白棋下面有一个空点,由于其它白棋都与之能通过直接相邻,此时整片白棋的气都为1,不会被吃掉。当黑棋在该空点下棋后,白棋气为0,将被吃掉。


3. 当下棋造成双方棋子都没有气时,只有对方的棋子被吃掉。如下图空点处,黑棋下子后,最中间的黑棋和中圈的白棋都没有气,但只有白棋被吃掉。除了这种情况。不允许下棋导致本方棋子没有气(自杀棋)。

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值