4600:[GESP202603四级] 礼盒排序
文件提交:无需freopen
内存限制:128 MB
时间限制:1.000 S
评测方式:普通裁判
金币值:
命题人:
提交:0
解决:0
题目描述
## 题目背景
2026 年 03 月 GESP C++ 四级编程第 2 题
## 题目描述
商店推出了许多礼盒,每个礼盒中包含 $k$ 件商品,每件商品都有一个价格。
现在需要对这些礼盒进行排序,排序规则如下:
1. 先按**礼盒总价格从小到大**排序;
2. 如果总价格相同,按礼盒中**最贵商品的价格从小到大**排序;
3. 如果仍然相同,按礼盒中**最便宜商品的价格从小到大**排序;
4. 如果仍然相同,按**礼盒编号从小到大**排序。
请输出排序后的礼盒编号。
## 输入格式
第一行包含两个整数 $n$ 和 $k$,分别表示礼盒数量和每个礼盒中商品的数量。
接下来 $n$ 行,每行包含 $k$ 个整数,第 $i$ 行表示第 $i$ 个礼盒中各商品的价格。
## 输出格式
输出一行,包含排序后的礼盒编号(编号从 $1$ 开始),用空格分隔。
## 样例
```input1
4 3
3 5 2
4 1 5
2 2 4
3 4 3
```
```output1
3 4 2 1
```
## 样例解释
| 编号 | 商品价格 | 总价 | 最大值 | 最小值 |
| :-: | :-: | :-: | :-: | :-: |
| $1$ | $3\ 5\ 2$ | $10 $| $5$ | $2$ |
| $2$ | $4\ 1\ 5$ | $10$ | $5$ | $1$ |
| $3$ | $2\ 2\ 4$ | $8$ | $4$ | $2$ |
| $4$ | $3\ 4\ 3$ | $10$ | $4$ | $3$ |
排序过程:
1. 按总价排序,$3$ 号礼盒总价最小;
2. 其余总价均为 $10$,再按最大值排序,$4$ 号最大值更小;
3. $1$ 号和 $2$ 号最大值相同,再按最小值排序,$2$ 号更小。
最终顺序为:$3 \ 4 \ 2 \ 1$
## 数据范围
保证 $1 \leq n \leq 10^3$,$1 \leq k \leq 10$,$1 \leq$ 商品价格 $\leq 10^4$。