HUFEOJ正在加载中...

1364: 【例64.1】 二维数组转置

金币值:0 定数:1 时间限制:1.000 s 内存限制:64 M
正确:0 提交:0 正确率:0.00% 命题人:
点赞量:0 收藏量:0 题目类型:程序

题目描述

[md] 输入一个$n$行$m$列的数组,输出他的转置,具体来说 输出的第$i$行第$j$个数字,应是输入的第$j$行第$i$个数字。 **1 <= n <=20000 , 1 <= m <= 20000 1 <= n * m <=20000 , 1 <= a[i][j] <= 1000** 特别注意,你并不能声明一个两维的大小都是$20000$二维数组。(数组不能太大,二维数组的大小是两维的乘积) 二维数组本质上和一维数组等价,所以你只需要一个大小为$20000$的一维数组。 [/md]

输入格式

第一行两个整数$n$, $m$表示数组的行数和列数;
接下来$n$行,每行$m$个整数表示数组内容。

输出格式

第一行先输出$m$, $n$。 接下来输出转置的结果,共$m$行$n$列。 其中第$i$行第$j$个数字,应是输入的第$j$行第$i$个数字。

输入样例    复制

3 2
1 2
3 4
5 6

输出样例    复制

2 3
1 3 5
2 4 6

提示