python如何列印井號 井字遊戲 python

2021-10-11 02:04:26 字數 1006 閱讀 8547

問題描述

設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元" ","x"和"o"組成,其中字元" "代表乙個空位。

以下是井字遊戲的規則:

玩家輪流將字元放入空位(" ")中。

第乙個玩家總是放字元"o",且第二個玩家總是放字元"x"。

"x"和"o"只允許放置在空位中,不允許對已放有字元的位置進行填充。

當有n個相同(且非空)的字元填充任何行、列或對角線時,遊戲結束,對應該字元的玩家獲勝。

當所有位置非空時,也算為遊戲結束。

如果遊戲結束,玩家不允許再放置字元。

如果遊戲存在獲勝者,就返回該遊戲的獲勝者使用的字元("x"或"o");如果遊戲以平局結束,則返回 "draw";如果仍會有行動(遊戲未結束),則返回 "pending"。

例子image.png

思路:這個井字遊戲相信大家都玩過,那如何去判別某個狀態的輸贏呢,其實很簡單,就是將所有的行、列、對角線的字母組成字串,然後與「o」x n 和「x」 x n進行對比。

class solution:

def tictactoe(self, board: list[str]) -> str:

re= #儲存所有情況的列表

n=len(board)

t='' #對角

u=''

for i in range(n):

t+=board[i][i]

u+=board[n-i-1][i]

for j in range(n):

g=''

for i in range(len(board)):

g=g+board[i][j]

if 'x'*n in re:

return "x"

if 'o'*n in re:

return "o"

if ' ' in ''.join(board):

return "pending"

else:

return "draw"

python井字棋 用python井字棋

上篇文章 python 井字棋 文本版 上 電腦端下棋策略是隨機的,有哪些位置可下棋,就隨機選擇乙個位置 實際中是不存這麼傻的對手的,賦予電腦乙個正常的智商還是很有必要的 至少當對手下一步要贏了,我們應該馬上堵住哪個位置 如果電腦自己能贏了,那就應該下能夠贏的位置 如果雙方都贏不了,那就找乙個比較好...

python 井字棋遊戲,Leetcode

今天刷到一道python的題目,對比了他人的做法,覺得自己簡直弱爆了,把這道題記錄一下,也供大家學習,真的很棒!設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元 x 和 o 組成,其中字元 代表乙個空位。規則玩家輪流將字元放入空位 中。第乙個玩家總是放字元 o 且...

Python簡易井字棋小遊戲

你好啊,我是乙個自學python的小白.才剛學會基礎的迴圈,方法這些.利用這些寫了乙個超簡易的井字棋小遊戲,希望你能喜歡.不要忘了點讚哦 from sys import ar import sys 輸入提示符,可不要 promot 陣列,用來模擬棋盤 arr 0for i in range 3 fo...