做了一个五子棋,现在想让这脚本实现人机互动,如何设计算法?(js+html)

2 个回答

在不考虑禁手的前提下,可以考虑在划定好边界之后,进行穷举。

判断的先后,粗略说一下吧:
1.自己活四或者冲四 且对手没有 活四或者冲四。
2. 对方冲四。
3. 对方活三。
4. 对方完成着棋后,在没有活三冲四的时候,判断左右上下斜线这些方位是否能完成活三。
5.以上都没有的时候,可以再自己的子能完成冲四或者活三的位置着棋。
6.以上都没有,着棋加权最高的点

达成条件就直接着棋,但是继续用一个二维数组保存余下的点,如果符合后面的条件,根据顺序加对应的数字。被对手着棋的点,记得要把点的值清空。

这个最好要有棋库,由大师级的高手制作,策略你交给它,你只考虑UI就可以了。

你的回答