1. 程式人生 > 實用技巧 >1126:矩陣轉置

1126:矩陣轉置

原題

題目

題目描述

輸入一個\(n\)\(m\)列的矩陣\(A\),輸出它的轉置\(A^T\)

輸入格式

第一行包含兩個整數\(n\)\(m\),表示矩陣\(A\)的行數和列數\((1≤n≤100,1≤m≤100)。\)
接下來\(n\)行,每行\(m\)個整數,表示矩陣\(A\)的元素。相鄰兩個整數之間用單個空格隔開,每個元素均在\(1~1000\)之間。

輸出格式

\(m\)行,每行\(n\)個整數,為順時針旋轉\(90\)度後的影象。相鄰兩個整數之間用單個空格隔開。

輸入樣例

3 3
1 2 3
4 5 6
7 8 9

輸出樣例

7 4 1
8 5 2
9 6 3

思路

讀入時用i、j讀入,輸出時用j、i輸出即可。

程式碼

#include<bits/stdc++.h>
using namespace std;
int a[102][102];
int main()
{
    int n,m;
    cin>>n>>m;
    for(register int i=0;i<n;++i)
        for(register int j=0;j<m;++j)
            cin>>a[i][j];
    for(register int j=0;j<m;++j)
    {
        for(register int i=0;i<n;++i)
            cout<<a[i][j]<<" ";
        puts("");
    }
    return 0;
}