Python reconoce un código de verificación

Es muy sencillo identificar el código de verificación Xiaoxiaole de una prueba, en un Jiugongge, después de encontrar dos elementos adyacentes e intercambiarlos, asegúrese de que haya una fila o una columna de elementos que sean iguales, como se muestra en la siguiente figura: Si este Jiugongge es una
inserte la descripción de la imagen aquí
imagen Si es así, la dividimos en 9 partes y luego marcamos cada cuadrícula como una categoría, u obtenemos 9 imágenes directamente del código fuente y finalmente las convertimos en una matriz bidimensional para el reconocimiento. Figura anterior, transformamos la matriz bidimensional como

matrix = [[0, 1, 2], [3, 2, 1], [2, 0, 1]]

A continuación, solo necesita escribir un reconocimiento de algoritmo de intercambio en python

def find_same(matrix):
    # 判断矩阵一行或者一列的元素是否相同
    for i in range(len(matrix)):
        if len(set(matrix[i])) == 1:
            return True
    for j in range(len(matrix[0])):
        if len(set([matrix[i][j] for i in range(len(matrix))])) == 1:
            return True



    return False


def swape(matrix, i, j, m, n):
    # 交换矩阵中两个元素的位置
    matrix[i][j], matrix[m][n] = matrix[m][n], matrix[i][j]
    return matrix


def for_swape(matrix):
    # 循环整个矩阵,交换相邻的两个元素,判断矩阵中的一行或者一列是否有相同的

Supongo que te gusta

Origin blog.csdn.net/qq_36551453/article/details/131614907
Recomendado
Clasificación