1126:矩陣轉置
時間限制: 1000 ms 內存限制: 65536 KB
提交數: 18579 通過數: 8605
【題目描述】
輸入一個n行m列的矩陣A,輸出它的轉置AT。
【輸入】
第一行包含兩個整數n和m,表示矩陣A的行數和列數(1≤n≤100,1≤m≤100)。
接下來n行,每行m個整數,表示矩陣A的元素。相鄰兩個整數之間用單個空格隔開,每個元素均在1~1000之間。
【輸出】
m行,每行n個整數,爲矩陣A的轉置。相鄰兩個整數之間用單個空格隔開。
【輸入樣例】
3 3
1 2 3
4 5 6
7 8 9
【輸出樣例】
1 4 7
2 5 8
3 6 9
思路:將矩陣的行變列,列變行 就可以了。
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[101][101];
int i,j,m,n;
cin >> n >> m;
for(i = 1;i <= n;i++)
for(j = 1;j <= m;j++)
cin >> a[i][j];
for(i = 1;i <= m;i++)
{
for(j = 1;j <= n;j++)
printf("%d ",a[j][i]);
printf("\n");
}
return 0;
}