freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

五子棋--軟件工程課程設(shè)計(jì)(編輯修改稿)

2024-12-16 04:59 本頁面
 

【文章內(nèi)容簡介】 t1, point2)) return false。 if (count == 5) return false。 else if (count == 4) return true。 else { bool blnFlag。 points[x, y] = qzcolor+1。 blnFlag = !ActiveConnectqp(qzcolor, count 1, point1, point2)。 points[x, y] = qzcolor。 return blnFlag。 } 9) 查看 是否是最好的點(diǎn) —— FindBestPoint 首先,查看有沒有最佳點(diǎn),并形成棧元素。如果沒有,返回 false;否則,將這棧元素壓入回溯棧中。當(dāng)棧非空時(shí),將棧元素彈出,如果棧中的 pointNumber 小于 pointCount 時(shí),在棋盤上下一棋。如果贏棋,不再繼續(xù)探測,并在棋盤上退一棋。如果和棋的話,也不再繼續(xù)探測,并在棋盤上退一棋。否則,繼續(xù)下棋并探測。如果棧頂元素?zé)o點(diǎn),彈出后棧必非空,并在棋盤上退一棋。如果棧頂元素中點(diǎn)均已試過,則尋找棧頂元素中點(diǎn)的最好結(jié)局,并尋找最佳步數(shù)。實(shí)現(xiàn)的代碼如下: result totalresult = 。 int i, bestStepNumber = 0。 StackElement tempStackElement = new StackElement()。 if (first) { qzcolor = 0。 if (!FindBestFivePointsAndFormAStackElement(qzcolor, ref tempStackElement)) return false。 } else { qzcolor = 1。 if (!FindBestFivePointsAndFormAStackElement(qzcolor, ref tempStackElement)) return false。 } (tempStackElement)。 while ( 0)//棧非空 { tempStackElement = (StackElement)()。 if ( ) { //在棋盤上下一棋 points[[].X, [].Y] = 。 if (Win(, [])) {//贏棋,不在繼續(xù)探測 [] = 。 [] = + 1。 //在棋盤上退一棋 points[[].X, [].Y] = 2。 ++。 (tempStackElement)。 } else if ( == M 1) {//將此元素壓入棧后棧滿,不在繼續(xù)探測 [] = 。 [] = M。 //在棋盤上退一棋 points[[].X, [].Y] = 2。 ++。 (tempStackElement)。 } else {//另一方繼續(xù)下棋向下探測 ++。 (tempStackElement)。 FindBestFivePointsAndFormAStackElement(+1, ref tempStackElement)。 (tempStackElement)。 } }//end if else//棧頂元素?zé)o點(diǎn)或點(diǎn)均已試過 { if ( == 0)//棧頂元素?zé)o點(diǎn),且彈出后棧必非空 { tempStackElement = (StackElement)()。 [ 1] = 。 [ 1] = + 1。 //在棋盤上退一棋 points[[ 1].X, [ 1].Y] = 2。 (tempStackElement)。 } else//棧頂元素中點(diǎn)均已試過 { //尋找棧頂元素中點(diǎn)的最好結(jié)局 totalresult = [0]。 for (i = 0。 i 。 i++) if (totalresult [i]) totalresult = [i]。 //尋找最佳步數(shù) if (totalresult == ) { bestStepNumber = M + 2。 for (i = 0。 i 。 i++) if (totalresult == [i] amp。amp。 bestStepNumber [i]) bestStepNumber = [i]。 } else//totalresult== lose { bestStepNumber = 0。 for (i = 0。 i 。 i++) if (totalresult == [i] amp。amp。 bestStepNumber [i]) bestStepNumber = [i]。 } if ( 0)//棧非空 { tempStackElement = (StackElement)()。 [ 1] = (result)(0 totalresult)。 [ 1] = bestStepNumber。 //在棋盤上退一棋 points[[ 1].X, [ 1].Y] = 2。 (tempStackElement)。 } } } } for (i = 0。 i 。 i++) if (totalresult == [i] amp。amp。 bestStepNumber == [i]) break。 bestPoint = [i]。 return true。 10) 尋找最佳的五個(gè)點(diǎn),并形成棧元素 —— FindBestFivePointsAndFormAStackElement 函數(shù)主要是找最佳點(diǎn),并形成棧元素。如果找到,返回 true;否則。返回 false。要找 最佳點(diǎn),就是找權(quán)值最大的點(diǎn)。首先,計(jì)算出棋盤上每一個(gè)點(diǎn)的權(quán)值,并找出最大的一 個(gè)。代碼如下: int[,] qpPower = new int[15, 15]。 bool blnHaveFound。 int x, y, i, max。 = 0。 for (x = 0。 x 15。 x++) for (y = 0。 y 15。 y++) qpPower[x, y] = GetqpPower(qzcolor, x, y)。 for (i = 0。 i 5。 i++) {//求第 i個(gè)最佳點(diǎn) max = 0。 for (x = 0。 x 15。 x++) for (y = 0。 y 15。 y++) if (max qpPower[x, y]) max = qpPower[x, y]。 for (x = 0。 x 15。 x++) { blnHaveFound = false。 for (y = 0。 y 15。 y++) if (max == qpPower[x, y]) { [i] = new Point(x, y)。 ++。 qpPower[x, y] = 1。 blnHaveFound = true。 break。 } if (blnHaveFound) break。
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1