‘壹’ 求五子棋C语言AI算法(原创思路)
我有个简单的思路: 先定义一条线上棋子的各种布局,比如初步定义长度为五个子 ◎◎◎◎● ◎◎●◎× ◎●◎×× ◎×◎×◎ 等等。白圈是自己的子,黑圈是对方的子,叉子是未走的格子。 程序里有个布局表,再定义各个布局的分数,比如连五最99分,连三30分等等。 ...
‘贰’ C语言五子棋判断胜负。给个具体思路也行。我知道是要5个子同一列或同一行或同一斜线。。
给个思路吧:
对每一条输入进行判断是否构成五连珠,也就是对每一条输入去搜索它的横竖斜三个方向去检查是否存在五个连续点。存储的数据结构使用二维数组即可,注意要区分双方的不同(可以奇数步使用0,偶数步使用1标记)。横方向即x不变,y增减;竖方向即y不变,x增减;斜方向有两个,一个是x,y同增减,另一个是xy增减相反。