Untitled
unknown
python
a year ago
869 B
12
Indexable
def has_won(board, column): directions = [(0, 1), (1, 0), (1, 1), (-1, 1)] def in_bound(row, col): return 0 <= row < len(board) and 0 <= col < len(board[0]) def check_win(direction, r, c, symbol): count = 0 dr, dc = direction r_dir, c_dir = r, c while in_bound(r_dir, c_dir) and board[r_dir][c_dir] == symbol: count += 1 if count == 4: return True r_dir, c_dir = r_dir + dr, c_dir + dc return False row_top = 0 while row_top < len(board) and board[row_top][column] == '.': row_top += 1 row_top -= 1 if row_top < 0: return False for direction in directions: if check_win(direction, row_top, column, board[row_top][column]): return True return False
Editor is loading...