有序网格
C++ GESP真题 四级 2026.9 #2
EXY-PG-0241
时间限制:1s 内存限制:512MB

题目描述

小 A 有一个 $n$ 行 $m$ 列格子组成的二维网格,从上到下依次是第 $1$ 行到第 $n$ 行,从左到右依次是第 $1$ 列到第 $m$ 列。每个格子里有一个数字,第 $i$ 行第 $j$ 列的格子里的数字是 $a_{i,j}$。

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

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

输入格式

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

接下来 $n$ 行,每行 $m$ 个整数 $a_{i,1},…,a_{i,m}$,表示二维网格中的数字。

输出格式

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

样例说明

样例 1
输入:
3 2
6 5
4 3
2 1
输出:
1 2
3 4
5 6
样例 2
输入:
3 4
1 3 2 5
6 2 4 4
5 4 1 3
输出:
1 2 3 5
1 3 4 5
2 4 4 6

数据范围

对于所有测试点,保证 $2≤n≤10$,$2≤m≤10$,$1≤a_{i,j}≤100$。