思路分析:
这道题挺简单的,就是单纯的矩阵转置。可如果用二维数组来存的话,根本就存不了,因为数据太大了。所以只能采用二维vector 来存储。一开始定义的时候只确定行,然后在每行输入之前重新定义有多少列即可。
代码实现:
#include<bits/stdc++.h>
using namespace std;
#define ll long long
ll H,W;
int main()
{
cin>>H>>W;
vector<vector<int>>a(H);
for(int i=0;i<H;i++)
{
a[i].resize(W);
for(int j=0;j<W;j++)
cin>>a[i][j];
}
for(int i=0;i<W;i++)
{
for(int j=0;j<H;j++)
{
if(j<H-1)
cout<<a[j][i]<<" ";
else cout<<a[j][i];
}
cout<<endl;
}
return 0;
}