nyoj 29-求转置矩阵问题 (行,列位置调换)
位置 矩阵 29 nyoj 转置 问题
2023-09-11 14:21:11 时间
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
提示:
没有提示哦
分析:
①、求一个矩阵的转置矩阵即就是吧该矩阵的行变成另一个矩阵的列
②、比如如下矩阵为: ==> 转置矩阵为:
A11 A12 A13 A11 A21 A31
A21 A22 A23 A12 A22 A32
A31 A32 A33 A13 A23 A33
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 }
相关文章
- hdu2371 矩阵乘法(求序列位置改变m次后的序列)
- shell 获取 IP 位置
- office2019如何自定义安装位置?
- SharedPreferences数据、openFileOutput文件、SQLite数据库文件存储位置
- 《PhoneGap移动应用开发手册》——1.6节调整位置传感器更新时间间隔
- java android 将 List中元素互换位置
- Oracle 19c 软件位置不可选
- shell位置参数和 shift 命令
- JS-009-屏幕分辨率、浏览器显示区域、元素位置获取
- delphi SetWindowPos改变窗体位置和状态
- 【基本优化实践】【1.6】在sql server修改且移动数据库文件位置
- (原+转)VS2013:正在从以下位置加载符号