编程题
### 问题描述
这个魔法阵由一系列晶石构成,每个晶石都储存着魔法能量。魔法师们发现,通过从每行晶石中选择一个并将每行选取的晶石能量汇集在一起(汇集的方式很简单,就是将每行选出的一个晶石的能量相加即可),他们可以释放强大的法术。为了实现最佳效果,魔法师们希望找到和最小的前 $k$ 种选择晶石的方式。
现在,作为魔法学院的一名新生,你被分配了这个任务。对于给定的晶石阵列,请你确定和最小的前 $k$ 种选择晶石的方式。
### 输入格式
首行包含三个整数 $n, m, k$,表示晶石阵列的行数、列数和你需要找到的选择方式的数量。
接下来的 $n$ 行,每行包含 $m$ 个正整数,代表每个晶石的魔法能量。
### 输出格式
输出一行,包含 $k$ 个整数,对于第 $i$ 个整数表示第 $i$ 小的晶石的能量和。
### 样例输入
```text
3 3 2
1 2 3
6 3 5
4 1 2
```
### 样例输出
```text
5 6
```
### 说明
在此示例中,最小的两种选择方式的总能量分别是 5 和 6。第一种方式是选择第一行的第一个晶石、第二行的第二个晶石和第三行的第二个晶石(1 + 3 + 1 = 5)。第二种方式是选择第一行的第一个晶石、第二行的第三个晶石和第三行的第二个晶石(1 + 5 + 1 = 6)。
### 评测数据规模
对于 $50$% 的评测数据,晶石阵列的大小满足 $1\le n\le 100$,并且 $1\le k\le m\le 100$。
对于 $100$% 的评测数据,晶石阵列的大小满足 $1\le n\le 700$,并且 $1\le k\le m\le 700$。