a569: 矩陣旋轉、轉置、交換與運算
標籤 : 2D
通過比率 : 0人/0人 (0%) [非即時]
評分方式:
Tolerant

最近更新 : 2025-04-02 13:53

內容

給定一個N×M 的整數矩陣 A,請根據以下指令對矩陣進行操作:

  1. R x:將矩陣的所有數值順時針旋轉x 次,每次旋轉 90 度。

  2. T:對矩陣進行轉置,即A[i][j] 變為A[j][i]。

  3. S r1 r2:交換矩陣的第r1 列和第r2 列(列的編號從 1 開始)。

  4. C c1 c2:交換矩陣的第c1 行和第c2 行(行的編號從 1 開始)。

  5. A:輸出矩陣中所有數字的平均值(四捨五入到整數)。

請實作一個程式,根據輸入的矩陣與指令,輸出最終的矩陣內容或平均值。

輸入說明

第一行包含兩個整數N 和M(1≤N,M≤10),表示矩陣的大小。

接下來N 行,每行包含M 個整數,表示矩陣的初始內容。
接下來一行包含一個整數Q(1≤Q≤10),表示指令數量。
接下來Q 行,每行包含一個指令,如上所述。
輸出說明

對於每個 A 指令,輸出一個整數,表示矩陣所有數值的平均值(四捨五入)。
對於所有其他指令,當最後一條指令執行完後,輸出最終矩陣,每行 M 個數字。

範例輸入 #1
3 3  
1 2 3  
4 5 6  
7 8 9  
2  
R 1  
A  
範例輸出 #1
5
7 4 1  
8 5 2  
9 6 3 
測資資訊:
記憶體限制: 64 MB
公開 測資點#0 (33%): 1.0s , <1K
公開 測資點#1 (33%): 1.0s , <1K
公開 測資點#2 (34%): 1.0s , <1K
提示 :

 

  • 旋轉操作(R x):可透過轉置 + 反轉行或列來實作。
  • 轉置操作(T):交換 \(A[i][j]\) 和 \(A[j][i]\)。
  • 交換列與行(S r1 r2, C c1 c2):單純交換兩列或兩行數據。
  • 計算平均值(A):計算矩陣內所有數值的平均值,並四捨五入。

 

標籤:
2D
出處:
IRIS [管理者: ]


編號 身分 題目 主題 人氣 發表日期
沒有發現任何「解題報告」