#6124. 【例64.1】 二维数组转置

    ID: 6124 Type: Default 1000ms 64MiB Tried: 0 Accepted: 0 Difficulty: (None) Uploaded By: Tags>一本通启蒙篇数的存储与组织

【例64.1】 二维数组转置

Description

输入一个nnmm列的数组,输出他的转置,具体来说 输出的第ii行第jj个数字,应是输入的第jj行第ii个数字。

1 <= n <=20000 , 1 <= m <= 20000 1 <= n * m <=20000 , 1 <= a[i][j] <= 1000

特别注意,你并不能声明一个两维的大小都是2000020000二维数组。(数组不能太大,二维数组的大小是两维的乘积) 二维数组本质上和一维数组等价,所以你只需要一个大小为2000020000的一维数组。

Input Format

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

Output Format

第一行先输出mm, nn。 接下来输出转置的结果,共mmnn列。 其中第ii行第jj个数字,应是输入的第jj行第ii个数字。

3 2
1 2
3 4
5 6
2 3
1 3 5
2 4 6

Source

http://bas.ssoier.cn:8086/problem_show.php?pid=3370 数的存储与组织