設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元" ",「x"和"o"組成,其中字元」 "代表乙個空位。
以下是井字遊戲的規則:
玩家輪流將字元放入空位(" ")中。
第乙個玩家總是放字元"o",且第二個玩家總是放字元"x"。
"x"和"o"只允許放置在空位中,不允許對已放有字元的位置進行填充。
當有n個相同(且非空)的字元填充任何行、列或對角線時,遊戲結束,對應該字元的玩家獲勝。
當所有位置非空時,也算為遊戲結束。
如果遊戲結束,玩家不允許再放置字元。
如果遊戲存在獲勝者,就返回該遊戲的獲勝者使用的字元(「x"或"o」);如果遊戲以平局結束,則返回 「draw」;如果仍會有行動(遊戲未結束),則返回 「pending」。
示例 1:
輸入: board = [「o x」," xo",「x o」]
輸出: 「x」
示例 2:
輸入: board = [「oox」,「xxo」,「oxo」]
輸出: 「draw」
解釋: 沒有玩家獲勝且不存在空位
示例 3:
輸入: board = [「oox」,「xxo」,"ox "]
輸出: 「pending」
解釋: 沒有玩家獲勝且仍存在空位
1 <= board.length == board[i].length <= 100
輸入一定遵循井字棋規則
class solution
}if(eachrow == 'x'*col || eachcol == 'x'*row)else if(eachrow == 'o'*col || eachcol == 'o'*row)
}if(rightline == 'x'*col || leftline == 'x'*row)else if(leftline == 'o'*row || rightline == 'o'*col)
if(flag)else
}}
python 井字棋遊戲,Leetcode
今天刷到一道python的題目,對比了他人的做法,覺得自己簡直弱爆了,把這道題記錄一下,也供大家學習,真的很棒!設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元 x 和 o 組成,其中字元 代表乙個空位。規則玩家輪流將字元放入空位 中。第乙個玩家總是放字元 o 且...
LeetCode有效的井字遊戲python
class solution object defvalidtictactoe self,board type board list str rtype bool first,second xo xnum sum row.count first for row in board onum sum r...
井字棋遊戲
三連棋遊戲 兩人輪流在印有九格方盤上劃 或 o 字,誰先把三個同一記號排成橫線 直線 斜線,即是勝者 程式提供隨機演算法和智慧型演算法兩種ai,隨機演算法使用隨機數隨意選擇棋盤上的位置,智慧型演算法通過對每隔落子位置權重的計算,選取最優的落子點。include include include inc...