Flipping the Matrix
阿新 • • 發佈:2018-12-12
思路:對於ij位置,有其他3個位置的數可以交換過來。而且可以在不改變upper-left其他部分的情況下交換過來,所以就是取所有upper left ij位置的對應4個位置的max,具體就是以下四個位置
# Complete the flippingMatrix function below. def flippingMatrix(a,n): return sum([sum([max(a[i][j],a[2*n-1-i][j],a[i][2*n-1-j],a[2*n-1-i][2*n-1-j]) for j in range(n)]) for i in range(n)]) if __name__ == '__main__': q = int(input()) for q_itr in range(q): n = int(input()) matrix = [] for _ in range(2*n): matrix.append(list(map(int, input().rstrip().split()))) result = flippingMatrix(matrix,n) print(result)