def print_matrix(matrix):
for row in matrix:
print("".join(f"{val:4}" for val in row))
def inverse_matrix(matrix):
# Flatten the matrix, reverse it, then rebuild
flat = [val for row in matrix for val in row][::-1]
rows, cols = len(matrix), len(matrix[0])
for i in range(rows):
matrix[i] = flat[i*cols:(i+1)*cols]
def main():
matrix = [
[1, 2, 3, 4],
[5, 6, 7, 8],
[9, 10, 11, 12]
]
print("matrix:")
print_matrix(matrix)
inverse_matrix(matrix)
print("\ninverse matrix:")
print_matrix(matrix)
if __name__ == "__main__":
main()
'''
run:
matrix:
1 2 3 4
5 6 7 8
9 10 11 12
inverse matrix:
12 11 10 9
8 7 6 5
4 3 2 1
'''