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$。

来源/分类