3789: 【例64.1】 二维数组转置
文件提交:无需freopen
内存限制:512 MB
时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
1
提交:14
解决:1
题目描述
## 【例64.1】 二维数组转置
时间限制:1000 ms
空间限制:512 MiB
题目类型:传统
### 题目描述
输入一个 $n$ 行 $m$ 列的数组,输出他的转置,具体来说:
输出的第 $i$ 行第 $j$ 个数字,应是输入的第 $j$ 行第 $i$ 个数字。
$1 \le n \times m \le 20000$
特别注意,你并不能声明一个两维的大小都是 $20000$ 二维数组。(数组不能太大,二维数组的大小是两维的乘积)
二维数组本质上和一维数组等价,所以你只需要一个大小为 $20000$ 的一维数组。
### 输入格式
第一行两个整数 $n, m$ 表示数组的行数和列数。
接下来 $n$ 行,每行 $m$ 个整数表示数组内容。
### 输出格式
第一行先输出 $m, n$。
接下来输出转置的结果,共 $m$ 行 $n$ 列。 其中第 $i$ 行第 $j$ 个数字,应是输入的第 $j$ 行第 $i$ 个数字。
### 样例
#### 样例输入
```plain
3 2
1 2
3 4
5 6
```
#### 样例输出
```plain
2 3
1 3 5
2 4 6
```
### 数据范围与提示
对于 $100\%$ 的数据,$1 \le n \le 20000$,$1 \le m \le 20000$,$1 \le a[i][j] \le 1000$。
### 分类标签
(无)