7,759
社区成员
发帖
与我相关
我的任务
分享
function IsAlive(ByVal 颜色,byval 起始位置, byref 已检查() as boolean) As Boolean
dim 待判断队列, 判断点, 周边点
redim 已检查(18,18) as boolean
待判断队列.add 起始位置
已检查(起始位置.x, 起始位置.y) = true
while 待判断队列.非空()
判断点 = 待判断队列.Get()
循环 判断点 的 周边点
if not 已检查(周边点.x, 周边点.y) then
if 周边点.棋子颜色 = 没有 then
IsAlive = True
Exit function
elseif 周边点.棋子颜色 = 颜色 then
待判断队列.add 周边点
end if
已检查(周边点.x, 周边点.y) = true
end if
wend
'没气了,已检查(x,y) = true 并且 棋盘(x,y).棋子颜色 = 颜色 的子都要提掉
IsAlive = False
end function