检查矩阵的所有行是否在 Python 中彼此循环旋转
假设,我们提供了一个大小为n*n的矩阵,其中包含整数。我们必须找出该矩阵的所有行是否都是其前一行的圆形旋转。在第一行的情况下,应该是第n行的圆周旋转。
所以,如果输入是这样的
那么输出将为True。
示例
让我们看看以下实现以获得更好的理解-
def solve(matrix) : concat = "" for i in range(len(matrix)) : concat = concat + "-" + str(matrix[0][i]) concat = concat + concat for i in range(1, len(matrix)) : curr_row = "" for j in range(len(matrix[0])) : curr_row = curr_row + "-" + str(matrix[i][j]) if (concat.find(curr_row)) : return True return False matrix = [['B', 'A', 'D', 'C'], ['C', 'B', 'A', 'D'], ['D', 'C', 'B', 'A'], ['A', 'D', 'C', 'B']] print(solve(matrix))
输入
[['B', 'A', 'D', 'C'], ['C', 'B', 'A', 'D'], ['D', 'C', 'B', 'A'], ['A', 'D', 'C', 'B']]输出结果
True