![](https://iknow-base.cdn.bcebos.com/lxb/notice.png)
用JAVA编程解决一个围棋问题(急!!!12小时之内求答案) 15
已知在围棋盘中,有19行19列361个点。每个点的座标x,(0<=x<=18),y(0<=y<=18)表示该点在x行和y列。任意时刻,每个点必然处于三种状态中的一种:黑子...
已知在围棋盘中,有19行19列361个点。每个点的座标x,(0<=x<=18),y(0<=y<=18)表示该点在x行和y列。任意时刻,每个点必然处于三种状态中的一种:黑子状态,白子状态或无子状态。
若有两个点A和B,其坐标分别是(xa,ya)和(xb,yb)。如果有xa= xb且| ya - yb |=1或者ya= yb且| xa - xb |=1那么A和B为相邻点。
连通的定义:如果两个相邻点A和B,它们同为黑子状态或同为白子状态,则A和B是连通的。如果有三个点,A、B、C,A和B连通的,B和C连通的,那么,A和C也是连通的。
连通域的定义:如果一个点的集合D,集合中任两个点都是连通的,且在集合D之外的任一个点和D中的任一个点都不连通,那么D称为一个连通域。 很显然,连通域有以下特征:两个连通域D1和D2如果D1≠D2,则D1∩D2=空集。
一个连通域D,如果域中存在一个点,该点有一个相邻点的状态是无子状态,则D为非死棋。否则D为死棋。
编写一个程序,对于任意一个棋盘布局,求出黑子的所有连通域,并指出这些连通域是否是死棋。 展开
若有两个点A和B,其坐标分别是(xa,ya)和(xb,yb)。如果有xa= xb且| ya - yb |=1或者ya= yb且| xa - xb |=1那么A和B为相邻点。
连通的定义:如果两个相邻点A和B,它们同为黑子状态或同为白子状态,则A和B是连通的。如果有三个点,A、B、C,A和B连通的,B和C连通的,那么,A和C也是连通的。
连通域的定义:如果一个点的集合D,集合中任两个点都是连通的,且在集合D之外的任一个点和D中的任一个点都不连通,那么D称为一个连通域。 很显然,连通域有以下特征:两个连通域D1和D2如果D1≠D2,则D1∩D2=空集。
一个连通域D,如果域中存在一个点,该点有一个相邻点的状态是无子状态,则D为非死棋。否则D为死棋。
编写一个程序,对于任意一个棋盘布局,求出黑子的所有连通域,并指出这些连通域是否是死棋。 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询