歡迎加入我的 Discord 群組與我討論程式相關的問題!

Posted on 

 by 

 in 

ZeroJudge a015. 矩陣的翻轉

評分:1 分,滿分為 5。

題目連結

題意

給一個矩陣,要你把矩陣翻轉 (把行與列調換) (transpose)

解題方法

將矩陣用二維陣列存起來後,我們直接先從左到右,上到下輸出每一列的值就可以了。記得要在輸出完一列的時候換行。另外,記得要輸入直到 EOF,因為題目有多筆測試資料。

#include <bits/stdc++.h>
using namespace std;
int a[105][105];
int main(){
    int n, m;
    while(cin >> n >> m) { // 讀到 EOF
        for(int i = 0;i < n;i++) {
	        for(int j = 0;j < m;j++) {
                cin >> a[i][j];
            }
	    }
	    for(int i = 0;i < m;i++) {
            for(int j = 0;j < n;j++) {
                cout << a[j][i] << " \n"[j == n-1]; // 輸出到最後一個會變成換行 
	        }
	    }
    }
}

圖片來源:https://www.scaler.com/topics/transpose-of-a-matrix-in-c/

發表迴響

Blog at WordPress.com.

%d 位部落客按了讚: