#2079. 电影票房排序(难度电子学会T4)
电影票房排序(难度电子学会T4)
电影票房排序
输入一组电影的信息(包括电影名称和票房收入),将票房收入大于等于1,000,000的电影按照票房从高到低输出,票房收入低于1,000,000的电影按照输入顺序输出。
输入格式:
- 第一行输入一个整数
n,表示电影的数量。 - 接下来的
n行每行输入一个字符串name(电影名称)和一个整数box_office(票房收入)。
输出格式:
- 先按照票房收入从高到低输出高票房电影的名称。
- 然后按输入顺序输出其他电影的名称。
输入样例
5
PL001 85
PL002 60
PL003 95
PL004 70
PL005 80
输出样例
PL003
PL001
PL005
PL002
PL004
解释:
PL003,PL001,PL005为高分选手,按得分排序。PL002,PL004为低分选手,按输入顺序输出。
解题思路
- 定义数据结构:
- 使用结构体
Player存储每个选手的信息,包括id(选手编号)和score(得分)。 - 使用两个数组
high_score和low_score分别存储得分高(大于等于80)和得分低(小于80)的选手信息。
- 使用结构体
- 输入数据和分类:
- 首先输入选手数量
n。 - 然后,通过循环读取每个选手的编号和得分,分类存储到相应的数组中。
- 首先输入选手数量
- 排序和输出:
- 使用
stable_sort对high_score数组按得分从高到低排序。 - 按顺序输出
high_score数组中的选手编号。 - 按输入顺序输出
low_score数组中的选手编号。
- 使用