a015: 矩阵的翻转
这篇教学会示范 ZeroJudge 基础题库“a015: 矩阵的翻转”的解题过程。
题目需求
题目会先提供两个正整数,分别代表矩阵的列 ( row,垂直 ) 和行 ( column,水平 ),接着会出现对应的矩阵,收到完整的矩阵内容后,再将行与列对掉成为结果并输出。
题目链接:a015: 矩阵的翻转
解答
因为要进行矩阵 row 和 column 的对调,所以先建立一个空的串列 output,接着根据原本串列 column 的多寡,让 output 具有同样的 row,最后只要将原本串列 column 的项目,依序放入 output 的 row 中即可。
while True:
try:
row, column = map(int, input().split(' ')) # 取得輸入數字的 row 和 column
output = [] # 設定輸出的串列
for i in range(column):
output.append([])
# 先根據一個 row 裡幾個 column,讓 output 產生對應數量的 row ( 因為對調 ),
# 並設定每個 row 的內容都是空串列
for i in range(row):
a = [int(j) for j in input().split(' ')] # 取出每一個 row 裡 column 的內容為串列
for k in range(len(a)):
output[k].append(a[k])
# 將每個 column 的內容,依序放到 output 的每個 row 的串列中
for i in output:
for j in range(len(i)):
print(i[j], end=' ') # 依序將 output 的內容輸出
print()
except:
break
微信扫码关注
抖音扫码关注