#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 为低分选手,按输入顺序输出。

解题思路

  1. 定义数据结构​:
    • 使用结构体 Player 存储每个选手的信息,包括 id(选手编号)和 score(得分)。
    • 使用两个数组 high_scorelow_score 分别存储得分高(大于等于80)和得分低(小于80)的选手信息。
  2. 输入数据和分类​:
    • 首先输入选手数量 n
    • 然后,通过循环读取每个选手的编号和得分,分类存储到相应的数组中。
  3. 排序和输出​:
    • 使用 stable_sorthigh_score 数组按得分从高到低排序。
    • 按顺序输出 high_score 数组中的选手编号。
    • 按输入顺序输出 low_score 数组中的选手编号。