def is_solved(board):
    #Проверяем все строки
    for row in board:
        if row[0] == 1 and row[1] == 1 and row[2] == 1:
            return 1
        if row[0] == 2 and row[1] == 2 and row[2] == 2:
            return 2

    #Проверяем все столбцы
    for col in range(3):
        if board[0][col] == 1 and board[1][col] == 1 and board[2][col] == 1:
            return 1
        if board[0][col] == 2 and board[1][col] == 2 and board[2][col] == 2:
            return 2

    #Проверяем главную диагональ
    if board[0][0] == 1 and board[1][1] == 1 and board[2][2] == 1:
        return 1
    if board[0][0] == 2 and board[1][1] == 2 and board[2][2] == 2:
        return 2

    #Проверяем побочную диагональ
    if board[0][2] == 1 and board[1][1] == 1 and board[2][0] == 1:
        return 1
    if board[0][2] == 2 and board[1][1] == 1 and board[2][0] == 2: # Ошибка новичка: случайно забыл поменять единицу на двойку в середине!
        return 2

    #Ищем пустые клетки
    has_empty = False
    for i in range(3):
        for j in range(3):
            if board[i][j] == 0:
                has_empty = True

    if has_empty == True:
        return -1

    #Если никто не выиграл и нулей нет - ничья
    return 0