解题思路:

注意事项:

参考代码:

n = int(input())
num_start = [list(map(str, input().split())) for _ in range(n)]
num_end = [list(map(str, input().split())) for _ in range(n)]

def shun_90(arr):
    num1 = [list(col) for col in zip(*arr)]
    for i in range(len(num1)):
        num1[i].reverse()
    return num1

def ni_90(arr):
    num = [list(row) for row in arr]  # 创建副本,以防在运行函数后将传递的参数改变
    for i in range(len(num)):
        num[i].reverse()
    col = [list(col) for col in zip(*num)]
    return col

def duichen(arr):
    num = [list(row) for row in arr]  # 创建副本
    n, m = 0, len(num) - 1
    for i in range(len(num)):
        num[i].reverse()
    while n < int(len(num) / 2):
        num[n], num[m] = num[m], num[n]
        n += 1
        m -= 1
    return num

def bubbian(arr):
    num = [list(row) for row in arr]  # 创建副本
    return num

def compare_arr(arr1,arr2):
    if len(arr1) != len(arr2):
        return False
    for row1, row2 in zip(arr1, arr2):
        if row1 != row2:
            return False
    return True

a = shun_90(num_start[:]) #创建副本,避免修改num_start的值
b = ni_90(num_start[:])
c = duichen(num_start[:])
d = bubbian(num_start[:])

if compare_arr(a,num_end):
    print(1)
elif compare_arr(b,num_end):  # 修改此处
    print(2)
elif compare_arr(c,num_end):
    print(3)
elif compare_arr(d,num_end):
    print(4)
else:
    print(5)


点赞(0)
 

0.0分

0 人评分

C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:

一点编程也不会写的:零基础C语言学练课程

解决困扰你多年的C语言疑难杂症特性的C语言进阶课程

从零到写出一个爬虫的Python编程课程

只会语法写不出代码?手把手带你写100个编程真题的编程百练课程

信息学奥赛或C++选手的 必学C++课程

蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程

手把手讲解近五年真题的蓝桥杯辅导课程

评论列表 共有 0 条评论

暂无评论