⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 jinshou.java

📁 JAVA 写的五子棋
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
						if(pq[m][c]==0){
							for(c=n-3;c>=0;c--){
								if(pq[m][c]==1){
									above++;
								}
								else{
									break;
								}
							}
						}
					}
					if(c>=0&&c!=n-1){
						if(pq[m][c]==-1){
							return false;
						}
					}
					if(pq[m][d]==1){
						below=1;
						d=n+2;
						if(pq[m][d]==1){
							below=2;
							for(d=n+3;d<15;d++){
								if(pq[m][d]==1){
									below++;
								}
								else{
									break;
								}
							}
						}
						else{
							if(pq[m][d]==0){
								for(d=n+3;d<15;d++){
									if(pq[m][d]==1){
										below++;
									}
									else{
										break;
									}
								}
							}
						}
						if(d<15&&d!=n+1){
							if(pq[m][d]==-1){
								return false;
							}
						}
					}
					else{
						if(pq[m][d]==0){
							for(d=n+2;d<15;d++){
								if(pq[m][d]==1){
									below++;
								}
								else{
									break;
								}
							}
							if(d<15&&d!=n+1){
								if(pq[m][d]==-1){
									return false;
								}
							}
						}
					}
				}
				vertical=above+below;
			}
			}
			//判断"\"方向
			int e=1;
			int f=1;
			int g=1;
			int h=1;
//			e=m-1;
//			f=n-1;
//			g=m+1;
//			h=n+1;
			if(m-1>=0&&m+1<15&&n-1>=0&&n+1<15){
				e=m-1;
				f=n-1;
				g=m+1;
				h=n+1;
			if(pq[e][f]==0){
				for(e=m-2,f=n-2;e>=0&&f>=0;e--,f--){
					if(pq[e][f]==1){
						skewabove++;
					}
					else{
						break;
					}
				}
				if(e>=0&&f>=0&&e!=m-1&&f!=n-1){
					if(pq[e][f]==-1){
						return false;
					}
				}
				if(pq[g][h]==1){
					skewbelow=1;
					g=m+2;
					h=n+2;
					if(pq[g][h]==1){
						skewbelow=2;
						for(g=m+3,h=n+3;g<15&&h<15;g++,h++){
							if(pq[g][h]==1){
								skewbelow++;
							}
							else{
								break;
							}
						}
					}
					else{
						if(pq[g][h]==0){
							for(g=m+3,h=n+3;g<15&&h<15;g++,h++){
								if(pq[g][h]==1){
									skewbelow++;
								}
								else{
									break;
								}
							}
						}
					}
					if(g<15&&h<15&&g!=m+1&&h!=n+1){	
						if(pq[g][h]==-1){
							return false;
						}
					}
				}
				else{
					if(pq[g][h]==0){
						for(g=m+2,h=n+2;g<15&&h<15;g++,h++){
							if(pq[g][h]==1){
								skewbelow++;
							}
							else{
								break;
							}
						}
						if(g<15&&h<15&&g!=m+1&&h!=n+1){	
							if(pq[g][h]==-1){
								return false;
							}
						}
					}
				}
				bias1=skewabove+skewbelow;
			}
			else{
				e=m-1;
				f=n-1;
				g=m+1;
				h=n+1;
				if(pq[e][f]==1){
					skewabove=1;
					e=m-2;
					f=n-2;
					if(pq[e][f]==1){
						skewabove=2;
						for(e=m-3,f=n-3;e>=0&&f>=0;e--,f--){
							if(pq[e][f]==1){
								skewabove++;
							}
							else{
								break;
							}
						}
					}
					else{
						if(pq[e][f]==0){
							for(e=m-3,f=n-3;e>=0&&f>=0;e--,f--){
								if(pq[e][f]==1){
									skewabove++;
								}
								else{
									break;
								}
							}
						}
					}
					if(e>=0&&f>=0&&e!=m-1&&f!=n-1){
						if(pq[e][f]==-1){
							return false;
						}
					}
					if(pq[g][h]==1){
						skewbelow=1;
						g=m+2;
						h=n+2;
						if(pq[g][h]==1){
							skewbelow=2;
							for(g=m+3,h=n+3;g<15&&h<15;g++,h++){
								if(pq[g][h]==1){
									skewbelow++;
								}
								else{
									break;
								}
							}
						}
						else{
							if(pq[g][h]==0){
								for(g=m+3,h=n+3;g<15&&h<15;g++,h++){
									if(pq[g][h]==1){
										skewbelow++;
									}
									else{
										break;
									}
								}
							}
						}
						if(g<15&&h<15&&g!=m+1&&h!=n+1){	
							if(pq[g][h]==-1){
								return false;
							}
						}
					}
					else{
						if(pq[g][h]==0){
							for(g=m+2,h=n+2;g<15&&h<15;g++,h++){
								if(pq[g][h]==1){
									skewbelow++;
								}
								else{
									break;
								}
							}
							if(g<15&&h<15&&g!=m+1&&h!=n+1){	
								if(pq[g][h]==-1){
									return false;
								}
							}
						}
					}
				}
				bias1=skewabove+skewbelow;
			}
			}
			//判断"/"方向
			int e1=1;
			int f1=1;
			int g1=1;
			int h1=1;
//			e1=m+1;
//			f1=n-1;
//			g1=m-1;
//			h1=n+1;
			if(m+1<15&&m-1>=0&&n+1<15&&n-1>=0){
				e1=m+1;
				f1=n-1;
				g1=m-1;
				h1=n+1;
			if(pq[e1][f1]==0){
				for(e1=m+2,f1=n-2;e1<15&&f1>=0;e1++,f1--){
					if(pq[e1][f1]==1){
						tiltedabove++;
					}
					else{
						break;
					}
				}
				if(e1<15&&f1>=0&&e1!=m+1&&f1!=n-1){
					if(pq[e1][f1]==-1){
						return false;
					}
				}
				if(pq[g1][h1]==1){
					tiltedbelow=1;
					g1=m-2;
					h1=n+2;
					if(pq[g1][h1]==1){
						tiltedbelow=2;
						for(g1=m-3,h1=n+3;g1>=0&&h1<15;g1--,h1++){
							if(pq[g1][h1]==1){
								tiltedbelow++;
							}
							else{
								break;
							}
						}
					}
					else{
						if(pq[g1][h1]==0){
							for(g1=m-3,h1=n+3;g1>=0&&h1<15;g1--,h1++){
								if(pq[g1][h1]==1){
									tiltedbelow++;
								}
								else{
									break;
								}
							}
						}
					}
					if(g1>=0&&h1<15&&g1!=m-1&&h1!=n+1){
						if(pq[g1][h1]==-1){
							return false;
						}
					}
				}
				else{
					if(pq[g1][h1]==0){
						for(g1=m-2,h1=n+2;g1>=0&&h1<15;g1--,h1++){
							if(pq[g1][h1]==1){
								tiltedbelow++;
							}
							else{
								break;
							}
						}
					}
					if(g1>=0&&h1<15&&g1!=m-1&&h1!=n+1){
						if(pq[g1][h1]==-1){
							return false;
						}
					}
				}
				bias2=tiltedabove+tiltedbelow;
			}
			else{
				e1=m+1;
				f1=n-1;
				g1=m-1;
				h1=n+1;
				if(pq[e1][f1]==1){
					tiltedabove=1;
					e1=m+2;
					f1=n-2;
					if(pq[e1][f1]==1){
						tiltedabove=2;
						for(e1=m+3,f1=n-3;e1<15&&f1>=0;e1++,f1--){
							if(pq[e1][f1]==1){
								tiltedabove++;
							}
							else{
								break;
							}
						}
					}
					else{
						if(pq[e1][f1]==0){
							for(e1=m+3,f1=n-3;e1<15&&f1>=0;e1++,f1--){
								if(pq[e1][f1]==1){
									tiltedabove++;
								}
								else{
									break;
								}
							}
						}
					}
					if(e1<15&&f1>=0&&e1!=m+1&&f1!=n-1){
						if(pq[e1][f1]==-1){
							return false;
						}
					}
					if(pq[g1][h1]==1){
						tiltedbelow=1;
						g1=m-2;
						h1=n+2;
						if(pq[g1][h1]==1){
							tiltedbelow=2;
							for(g1=m-3,h1=n+3;g1>=0&&h1<15;g1--,h1++){
								if(pq[g1][h1]==1){
									tiltedbelow++;
								}
								else{
									break;
								}
							}
						}
						else{
							if(pq[g1][h1]==0){
								for(g1=m-3,h1=n+3;g1>=0&&h1<15;g1--,h1++){
									if(pq[g1][h1]==1){
										tiltedbelow++;
									}
									else{
										break;
									}
								}
							}
						}
						if(g1>=0&&h1<15&&g1!=m-1&&h1!=n+1){
							if(pq[g1][h1]==-1){
								return false;
							}
						}
					}
					else{
						if(pq[g1][h1]==0){
							for(g1=m-2,h1=n+2;g1>=0&&h1<15;g1--,h1++){
								if(pq[g1][h1]==1){
									tiltedbelow++;
								}
								else{
									break;
								}
							}
							if(g1>=0&&h1<15&&g1!=m-1&&h1!=n+1){
								if(pq[g1][h1]==-1){
									return false;
								}
							}
						}
					}
				}
				bias2=tiltedabove+tiltedbelow;
			}
			
//			if((horizon==2&&vertical==2)||(horizon==2&&bias1==2)||(horizon==2&&bias2==2)
//					||(vertical==2&&bias1==2)||(vertical==2&&bias2==2)||(bias1==2&&bias2==2)){
//				return true;
//			}
			if((horizon==2&&vertical==2)||(horizon==2&&bias1==2)||(horizon==2&&bias2==2)
					||(vertical==2&&bias1==2)||(vertical==2&&bias2==2)||(bias1==2&&bias2==2)
					||(horizon==3&&vertical==3)||(horizon==3&&bias1==3)||(horizon==3&&bias2==3)
					||(vertical==3&&bias1==3)||(vertical==3&&bias2==3)||(bias1==3&&bias2==3)){
				return true;
			}
		}
		}
		return false;
  }

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -