nyoj 29-求轉置矩陣問題 (行,列位置調換)
阿新 • • 發佈:2018-05-21
panel sta 輸入 clas ons 分析 描述 個數 ret
A11 A12 A13 A11 A21 A31
A21 A22 A23 A12 A22 A32
A31 A32 A33 A13 A23 A33 C/C++代碼實現(AC):
29-求轉置矩陣問題
內存限制:64MB
時間限制:3000ms
Special Judge: No
accepted:8
submit:18
題目描述:
求一個三行三列的轉置矩陣。輸入描述:
第一行一個整數n<20,表示有n組測試數據,下面是n組數據; 每組測試數據是九個整型數(每個數都不大於10000),分別為矩陣的的每項;
輸出描述:
每組測試數據的轉置矩陣; 請在每組輸出之後加一個換行
樣例輸入:
2 1 2 3 4 5 6 7 8 9 2 3 4 5 6 7 8 9 1
樣例輸出:
1 4 7 2 5 8 3 6 9 2 5 8 3 6 9 4 7 1
提示:
沒有提示哦 分析: ①、求一個矩陣的轉置矩陣即就是吧該矩陣的行變成另一個矩陣的列 ②、比如如下矩陣為: ==> 轉置矩陣為:A21 A22 A23 A12 A22 A32
A31 A32 A33 A13 A23 A33 C/C++代碼實現(AC):
1 #include <iostream> 2 #include <algorithm> 3 #include <cstring> 4 #include <cstdio> 5 #include <cmath> 6 #include <stack> 7#include <map> 8 #include <queue> 9 10 using namespace std; 11 const int MAXN = 4; 12 13 int main() 14 { 15 int t, A[MAXN][MAXN]; 16 scanf("%d", &t); 17 18 while(t --) 19 { 20 for(int i = 0; i <= 2; ++ i) 21 for(int j = 0; j <= 2; ++ j) 22 scanf("%d", &A[i][j]); 23 24 for(int i = 0; i <= 2; ++ i) 25 { 26 for(int j = 0; j < 2; ++ j) 27 printf("%d ", A[j][i]); 28 printf("%d\n", A[2][i]); 29 } 30 printf("\n"); 31 } 32 return 0; 33 }
nyoj 29-求轉置矩陣問題 (行,列位置調換)