JAVA判断五子棋输赢
来源:互联网 发布:三中三用7.12.22.9算法 编辑:程序博客网 时间:2024/05/01 01:53
采用简单的算法,就是将五子棋盘分为六块,对每一块的方向分为图示,每个箭头代表了连5.
public class Test {static int[][] qipan = new int[15][15];public static void main(String[] args) {qipan[1][1] = 2;qipan[2][2] = 2;qipan[3][3] = 2;qipan[4][4] = 2;qipan[5][5] = 2;System.out.println(isWin(qipan,2));}/*** 判断五子棋棋盘数组是否存在连5* @param qipan 棋盘数组,int类型,默认值为0* @param color 棋子颜色,int类型,1为黑,2为白* @return 如果存在连5,则返回True*/public static boolean isWin(int[][] qipan,int color){boolean colsWcoln = false; int colors = (int) Math.pow(color, 5);for(int row = 0;row<15;row++){for(int col=0;col<15;col++){//第一种if(row<=10 && col<4){//int x = qcolpan[col][row]*qcolpan[col][row]*qcolpan[col][row]*qcolpan[col][row]*qcolpan[col][row]//→int x = qipan[col][row]*qipan[col+1][row]*qipan[col+2][row]*qipan[col+3][row]*qipan[col+4][row];//→int y = qipan[col][row]*qipan[col+1][row+1]*qipan[col+2][row+2]*qipan[col+3][row+3]*qipan[col+4][row+4]; //→int z = qipan[col][row]*qipan[col][row+1]*qipan[col][row+2]*qipan[col][row+3]*qipan[col][row+4]; //→if(x == colors || y == colors || z == colors){colsWcoln = true;}}//第二种if(row<=10 && col>=4 && col<=10 ){int x = qipan[col][row]*qipan[col+1][row]*qipan[col+2][row]*qipan[col+3][row]*qipan[col+4][row];//→int y = qipan[col][row]*qipan[col+1][row+1]*qipan[col+2][row+2]*qipan[col+3][row+3]*qipan[col+4][row+4]; //→int z = qipan[col][row]*qipan[col][row+1]*qipan[col][row+2]*qipan[col][row+3]*qipan[col][row+4]; //→int m = qipan[col][row]*qipan[col-1][row]*qipan[col-2][row]*qipan[col-3][row]*qipan[col-4][row];//→int n = qipan[col][row]*qipan[col-1][row+1]*qipan[col-2][row+2]*qipan[col-3][row+3]*qipan[col-4][row+4];//→if(x == colors || y == colors || z == colors || m == colors || n == colors){colsWcoln = true;}}//第三种if(row<=10 && col>10 ){int z = qipan[col][row]*qipan[col][row+1]*qipan[col][row+2]*qipan[col][row+3]*qipan[col][row+4]; //→int m = qipan[col][row]*qipan[col-1][row]*qipan[col-2][row]*qipan[col-3][row]*qipan[col-4][row];//→int n = qipan[col][row]*qipan[col-1][row+1]*qipan[col-2][row+2]*qipan[col-3][row+3]*qipan[col-4][row+4];//→if( z == colors || m == colors || n==colors){colsWcoln = true;}}//第四种if(row>10 && col<4){int x = qipan[col][row]*qipan[col+1][row]*qipan[col+2][row]*qipan[col+3][row]*qipan[col+4][row];//→if(x == colors){colsWcoln = true;}}//第五种if(row>10 && col>=4 && col<=10){int x = qipan[col][row]*qipan[col+1][row]*qipan[col+2][row]*qipan[col+3][row]*qipan[col+4][row];//→int m = qipan[col][row]*qipan[col-1][row]*qipan[col-2][row]*qipan[col-3][row]*qipan[col-4][row];//→if(x == colors || m == colors){colsWcoln = true;}}//第六种if(row>10 && col>10){int m = qipan[col][row]*qipan[col-1][row]*qipan[col-2][row]*qipan[col-3][row]*qipan[col-4][row];//→if(m == colors ){colsWcoln = true;}}}}return colsWcoln;}}
- JAVA判断五子棋输赢
- java五子棋判断输赢算法
- java-----五子棋小游戏(三)-----判断输赢
- JAVA 五子棋 判断输赢的代码实现
- 五子棋判断输赢C
- winform 五子棋 判断输赢
- 五子棋算法判断输赢
- 五子棋 判断输赢的函数
- 五子棋研究 判断输赢条件,及不复杂的AI算法 2个 。
- 今天用COCOS2DX写了个五子棋,记录下判断输赢的算法
- android游戏开发之我的小小游戏1——五子棋游戏2之判断输赢
- 2017-8-4java 人机猜拳(输赢判断) ,算法优化
- 输赢
- 输赢
- 输赢
- 井字棋判断输赢的两种方法
- java五子棋
- JAVA五子棋
- Archlinux安装笔记
- VS2005、VS2008中如何屏蔽讨厌的MSVCR*.dll的引用
- 五子棋AI思路
- JAVA 插入日期时间的实用方法
- extJS 3.3.1 在Myeclipse下配置开发(备忘)
- JAVA判断五子棋输赢
- 如果说中国的程序员技术偏低,原因可能在这里
- linux笔记
- 操作系统中的差异
- 可变参数
- android中的surface
- java基础之网络套接字编程
- 信号量
- VIM配置说明