#GESP0442. 有序网格

有序网格

题目描述

小 A 有一个 nn 行 mm 列格子组成的二维网格,从上到下依次是第 11 行到第 nn 行,从左到右依次是第 11 列到第 mm 列。每个格子里有一个数字,第 ii 行第 jj 列的格子里的数字是 ai,ja_{i,j}。

小 A 想让二维网格变得有序,因此他先对每一行从左到右按升序排序,再对每一列从上到下按升序排序。以下是一个先完成行排序再完成列排序的例子:

初始网格:
1 3 2 5
6 2 4 4
5 4 1 3

每行升序排序后:
1 2 3 5
2 4 4 6
1 3 4 5

每列升序排序后:
1 2 3 5
1 3 4 5
2 4 4 6

小 A 想知道二维网格经过以上排序后的结果。你能编写程序帮助他吗?

输入格式

第一行,两个正整数 nn,mm,分别表示二维网格的行数与列数。

接下来 nn 行,每行 mm 个整数 ai,ja_{i,j},表示二维网格中的数字。

输出格式

输出 nn 行,每行 mm 个整数,表示二维网格先完成行排序再完成列排序后的结果。

样例 #1

样例输入 #1

3 2
6 5
4 3
2 1

样例输出 #1

1 2
3 4
5 6

样例 #2

样例输入 #2

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

样例输出 #2

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

提示

【样例解释 1】

先把每一行从小到大排序:

5 6
3 4
1 2

再对每一列从小到大排序:

1 2
3 4
5 6

注意:两步的顺序不能颠倒,必须先把所有行都排好,再排每一列。只把整个矩阵当成一串数字整体排序,得到的结果通常和本题的答案不一样。

【数据范围】

对于所有测试点,保证 2≤n≤102 \le n \le 10,2≤m≤102 \le m \le 10,1≤ai,j≤1001 \le a_{i,j} \le 100。