面試題 16.04. 井字遊戲
難度中等6收藏分享切換為英文關注反饋
設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元" ","x"和"o"組成,其中字元" "代表乙個空位。
以下是井字遊戲的規則:
如果遊戲存在獲勝者,就返回該遊戲的獲勝者使用的字元("x"或"o");如果遊戲以平局結束,則返回 "draw";如果仍會有行動(遊戲未結束),則返回 "pending"。
示例 1:
輸入:board = ["o x"," xo","x o"]輸出:"x"示例 2:
輸入:board = ["oox","xxo","oxo"]輸出:"draw"解釋:沒有玩家獲勝且不存在空位示例 3:
輸入:board = ["oox","xxo","ox "]輸出:"pending"解釋:沒有玩家獲勝且仍存在空位
思路:一開始想著去搜尋,但是後面想了一下,其實就有四種情況,就是橫,豎,還有兩條對角線。所以。我遍歷整個圖,遇到x就置為1,遇到o就置為-1,遇到「 」就置為0。遍歷完了,然後搜著四種情況,判斷值得可能性,在輸出相應得結果
package 字串;
//面試題 16.04. 井字遊戲
public class no1604
" "+num1+" "+num2+" "+num3+" "+num4);
if(num1==n||num2==n||num3==n||num4==n)
else
return "pending";
}else
}else
else}}
}
井字棋遊戲
三連棋遊戲 兩人輪流在印有九格方盤上劃 或 o 字,誰先把三個同一記號排成橫線 直線 斜線,即是勝者 程式提供隨機演算法和智慧型演算法兩種ai,隨機演算法使用隨機數隨意選擇棋盤上的位置,智慧型演算法通過對每隔落子位置權重的計算,選取最優的落子點。include include include inc...
leetcode 井字遊戲
設計乙個演算法,判斷玩家是否贏了井字遊戲。輸入是乙個 n x n 的陣列棋盤,由字元 x 和 o 組成,其中字元 代表乙個空位。以下是井字遊戲的規則 玩家輪流將字元放入空位 中。第乙個玩家總是放字元 o 且第二個玩家總是放字元 x x 和 o 只允許放置在空位中,不允許對已放有字元的位置進行填充。當...
井字棋遊戲
井字棋,英文名叫tic tac toe,是一種在3 3格仔上進行的連珠遊戲,和五子棋類似,由於棋盤一般不畫邊框,格線排成井字故得名。遊戲需要的工具僅為紙和筆,然後由分別代表o和x的兩個遊戲者輪流在格仔裡留下標記 一般來說先手者為x 任意三個標記形成一條直線,則為獲勝。py100天day7 井字棋這個...