帮忙注释下面代码,谢谢
NullAndCount colUp=LeftBiasUpPowerValue(allChesses, row, col, color);
NullAndCount colDown=LeftBiasDownPowerValue(allChesses, row, col, color);
long powerValue;
switch(colUp.getChessCount()+colDown.getChessCount()+1){
case 1:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=1;
}
else {
powerValue=5;
}
break;
case 2:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=21;
}
else {
powerValue=85;
}
break;
case 3:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=341;
}
else {
powerValue=1365;
}
break;
case 4:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=5461;
}
else {
powerValue=21845;
}
break;
default:
powerValue=87381;
break;
}
return powerValue;
}
public NullAndCount LeftBiasDownPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
int i=row;
int j=col;
while(i<allChesses.length-1&&j>0){
if(allChesses[i+1][j-1]==color){
count++;
i=i+1;
j=j-1;
}
else {
if(allChesses[i+1][j-1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public NullAndCount LeftBiasUpPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
int i=row;
int j=col;
while(i>0&&j<allChesses.length-1){
if(allChesses[i-1][j+1]==color){
count++;
i=i-1;
j=j+1;
}
else {
if(allChesses[i-1][j+1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public long RightBiasPowerValue(Color[][] allChesses,int row,int col,Color color){
NullAndCount colUp=RightBiasUpPowerValue(allChesses, row, col, color);
NullAndCount colDown=RightBiasDownPowerValue(allChesses, row, col, color);
long powerValue;
switch(colUp.getChessCount()+colDown.getChessCount()+1){
case 1:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=1;
}
else {
powerValue=5;
}
break;
case 2:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=21;
}
else {
powerValue=85;
}
break;
case 3:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=341;
}
else {
powerValue=1365;
}
break;
case 4:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=5461;
}
else {
powerValue=21845;
}
break;
default:
powerValue=87381;
break;
}
return powerValue;
}
public NullAndCount RightBiasDownPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
int i=row;
int j=col;
while(i<allChesses.length-1&&j<allChesses.length-1){
if(allChesses[i+1][j+1]==color){
count++;
i=i+1;
j=j+1;
}
else {
if(allChesses[i+1][j+1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public NullAndCount RightBiasUpPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
int i=row;
int j=col;
while(i>0&&j>0){
if(allChesses[i-1][j-1]==color){
count++;
i=i-1;
j=j-1;
}
else {
if(allChesses[i-1][j-1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public long ColPowerValue(Color[][] allChesses,int row,int col,Color color){
NullAndCount colUp=ColUpPowerValue(allChesses, row, col, color);
NullAndCount colDown=ColDownPowerValue(allChesses, row, col, color);
long powerValue;
switch(colUp.getChessCount()+colDown.getChessCount()+1){
case 1:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=1;
}
else {
powerValue=5;
}
break;
case 2:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=21;
}
else {
powerValue=85;
}
break;
case 3:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=341;
}
else {
powerValue=1365;
}
break;
case 4:
if(colUp.getNullCount()==0&&colDown.getNullCount()==0){
powerValue=0;
}
else if((colUp.getNullCount()==1&&colDown.getNullCount()==0)||(colUp.getNullCount()==0&&colDown.getNullCount()==1)){
powerValue=5461;
}
else {
powerValue=21845;
}
break;
default:
powerValue=87381;
break;
}
return powerValue;
}
public NullAndCount ColDownPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
for(int i=row;i<allChesses.length-1;i++){
if(allChesses[i+1][col]==color){
count++;
}
else{
if(allChesses[i+1][col]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public NullAndCount ColUpPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
for(int i=row;i>0;i--){
if(allChesses[i-1][col]==color){
count++;
}
else{
if(allChesses[i-1][col]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public long RowPowerValue(Color[][] allChesses,int row,int col,Color color){
NullAndCount rightRow=RightRowPowerValue(allChesses, row, col, color);
NullAndCount leftRow=LeftRowPowerValue(allChesses, row, col, color);
long powerValue;
switch(rightRow.getChessCount()+leftRow.getChessCount()+1){
case 1:
if(rightRow.getNullCount()==0&&leftRow.getNullCount()==0){
powerValue=0;
}
else if((rightRow.getNullCount()==1&&leftRow.getNullCount()==0)||(rightRow.getNullCount()==0&&leftRow.getNullCount()==1)){
powerValue=1;
}
else {
powerValue=5;
}
break;
case 2:
if(rightRow.getNullCount()==0&&leftRow.getNullCount()==0){
powerValue=0;
}
else if((rightRow.getNullCount()==1&&leftRow.getNullCount()==0)||(rightRow.getNullCount()==0&&leftRow.getNullCount()==1)){
powerValue=21;
}
else {
powerValue=85;
}
break;
case 3:
if(rightRow.getNullCount()==0&&leftRow.getNullCount()==0){
powerValue=0;
}
else if((rightRow.getNullCount()==1&&leftRow.getNullCount()==0)||(rightRow.getNullCount()==0&&leftRow.getNullCount()==1)){
powerValue=341;
}
else {
powerValue=1365;
}
break;
case 4:
if(rightRow.getNullCount()==0&&leftRow.getNullCount()==0){
powerValue=0;
}
else if((rightRow.getNullCount()==1&&leftRow.getNullCount()==0)||(rightRow.getNullCount()==0&&leftRow.getNullCount()==1)){
powerValue=5461;
}
else {
powerValue=21845;
}
break;
default:
powerValue=87381;
break;
}
return powerValue;
}
public NullAndCount LeftRowPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
for(int i=col;i>0;i--){
if(allChesses[row][i-1]==color){
count++;
}
else{
if(allChesses[row][i-1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
public NullAndCount RightRowPowerValue(Color[][] allChesses,int row,int col,Color color){
int count=0;
NullAndCount nullAndCount=new NullAndCount();
for(int i=col;i<allChesses.length-1;i++){
if(allChesses[row][i+1]==color){
count++;
}
else{
if(allChesses[row][i+1]==null){
nullAndCount.setNullCount(1);
}
break;
}
}
nullAndCount.setChessCount(count);
return nullAndCount;
}
}
相关推荐
下面提供一些C语言的入门示例代码,并附有注释,以帮助理解每个部分的功能 1. Hello World程序 #include
下面提供一些C语言的入门示例代码,并附有注释,以帮助理解每个部分的功能。 1. Hello World程序 #include <stdio.h> // 引入标准输入输出库
Python单行注释使用井号(#)作为注释符号。下面是一篇详细的文章,涵盖了Python注释的使用方法和示例代码。
在本文中,我们将探讨Python中注释的使用方法,并提供一些示例代码。注释是Python中非常重要的一部分,用于解释代码的功能、目的和实现方法。Python没有官方的多行注释语法,但我们可以使用多个单行注释来实现类似的效果。这种方法在注释较少且较短的情况下是有效的,但如果有很多行注释,它可能会变得冗长和难以维护。单行注释是最简单的注释形式,用于在一行代码的末尾添加注释。在上面的示例中,第一行是一个注释,用于提供有关注释的信息。注释在代码中的作用是提供关于代码功能、目的和实现方法的说明。
让我们更详细地探讨模拟退火算法的MATLAB实现 下面的代码示例将包括更详细的注释,以及一个更复杂一些的目标函数,这个函数在多维
模拟退火算法matlab代码 让我们更详细地探讨模拟退火算法的MATLAB实现。下面的代码示例将包括更详细的注释,以及一个更复杂一些的目标函数,这个函数在多维空间中可能有多个局部最小值。 我们将使用一个更复杂的例子,即试图最小化一个多变量的函数。为了简化,我们将使用一个高斯函数的和作为我们的目标函数。 模拟退火算法MATLAB实现 function sa_minimize % 初始化参数 max_iterations = 1000; % 最大迭代次数 initial_temp = 100; % 初始温度 cooling_rate = 0.01; % 冷却率 min_temp = 1e-5; % 最小温度 dimensions = 2; % 问题维度 step_size = 0.1; % 初始步长 % 初始化解
java的注释规范(单行注释、多行注释、分块注释)
有关于java的注释规范的详细描述,单行注释、多行注释、分块注释等这些java的三种注释方式
javascript 注释代码的几种方法总结
为了程序/代码的易读性,基本上每一种编程语言都有注释的功能,javascript也不例外,javascript注释代码有多种形式,本文章向大家介绍javascript注释代码的两种方法,需要的朋友可以参考一下


非技术区
