Qt实现的局域网对战五子棋

GoBang

使用Qt5.7.0完成的五子棋小软件,支持人人对战,人机对战,局域网联机对战

学习Qt后的一个练手项目,完成自己曾经在命令行下的五子棋的升华^_^

人机对战使用基于评分表的策略来完成电脑下子,算不上AI吧。。但是电脑的棋力还是很高的(至少我败多胜少)。这个评分表的来自onezeros的博客

评估当前棋局中,哪个位置的得分最高。五子棋要赢,必然要有五个棋子在一起成线,那么我们就可以计算棋盘中每一个五格相连的线,一下称之为五元组。一般情况(包括专业五子棋)下棋盘是15*15的。那么应该是572个五元组。同时,针对五元组中黑子和白子的数量(可以不考虑相对位置)的不同,给该五元组评不同的分。然后每一个位置的得分就是包含这个位置的所有五元组的得分之和。

评分表如下,是基于电脑黑棋,电脑白棋将评分表反过来即可

// tuple is empty  
Blank,  
// tuple contains a black chess  
B,  
// tuple contains two black chesses  
BB,  
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值