---
# System prepended metadata

title: Tic-Tac-Toe
tags: [APCS]

---

###### tags: `APCS`
# **Tic-Tac-Toe**
### **題目解析** 
井字遊戲是一個兩人對弈的遊戲，每位玩家輪流在3x3的棋盤上標記一個格子，第一位完成水平、垂直或對角線連成一線的玩家獲勝。本題要求判斷每場遊戲的勝者，並輸出"Player1 win"或"Player2 win"。若無人獲勝則輸出"draw"。
### **解題方向** 
1. 輸入資料：首先讀取一個整數N，表示要判斷的遊戲數量。接下來對於每一場遊戲，讀取3行輸入，每行有3個整數（0或1），代表井字遊戲的棋盤狀態。
1. 檢查勝利條件：對於每個遊戲的棋盤，檢查以下勝利條件：
    * 水平三連線：檢查每一行的3個格子是否相同。
    * 垂直三連線：檢查每一列的3個格子是否相同。
    * 對角線三連線：檢查兩條對角線的3個格子是否相同。
1. 輸出結果：
    * 如果任何一位玩家滿足三連線條件，則輸出該玩家獲勝。
    * 如果沒有玩家獲勝，則輸出"draw"。
### **完整程式碼**
```python=
while True:
    try:
        # 讀取遊戲的數量
        N = int(input())

        # 對於每一場遊戲
        for idx in range(N):
            arr = []
            # 讀取3x3的棋盤
            for i in range(3):
                row = list(map(int, input().split()))
                arr.append(row)
            
            isWin = False
            
            # 檢查水平三連線
            for i in range(3):
                if arr[i][0] == arr[i][1] == arr[i][2]:  # 簡化三連線檢查
                    if arr[i][0] == 0:
                        isWin = True
                        print("Player1 win")
                    elif arr[i][0] == 1:
                        isWin = True
                        print("Player2 win")

            # 檢查垂直三連線
            for j in range(3):
                if arr[0][j] == arr[1][j] == arr[2][j]:  # 簡化三連線檢查
                    if arr[0][j] == 0:
                        isWin = True
                        print("Player1 win")
                    elif arr[0][j] == 1:
                        isWin = True
                        print("Player2 win")

            # 檢查對角線三連線（左上到右下）
            if arr[0][0] == arr[1][1] == arr[2][2]:  # 簡化三連線檢查
                if arr[0][0] == 0:
                    isWin = True
                    print("Player1 win")
                elif arr[0][0] == 1:
                    isWin = True
                    print("Player2 win")
            
            # 檢查對角線三連線（右上到左下）
            if arr[0][2] == arr[1][1] == arr[2][0]:  # 簡化三連線檢查
                if arr[0][2] == 0:
                    isWin = True
                    print("Player1 win")
                elif arr[0][2] == 1:
                    isWin = True
                    print("Player2 win")

            # 若無人獲勝，則判斷為平局
            if not isWin:
                print("draw")

    except:
        break

```