#6755. 运动会积分榜

运动会积分榜

题目背景

某校举办运动会,有 nn 支队伍参赛。每支队伍可以参加多个项目。每个项目结束后,获得金牌、银牌、铜牌的队伍会分别得到 55 分、33 分、11 分(若并列则按相应名次给分,但这里简化:没有并列,每个项目金、银、铜牌各一个队伍获得)。

最终排名规则如下:

  1. 总分高的队伍排名靠前。
  2. 如果总分相同,则金牌数多的队伍排名靠前。
  3. 如果金牌数也相同,则银牌数多的队伍排名靠前。
  4. 如果银牌数也相同,则铜牌数多的队伍排名靠前。
  5. 如果以上全部相同,则队伍编号小的排名靠前(编号从 11nn)。

已知所有项目的获奖情况,请你输出最终的排名结果(按排名从第 11 到第 nn 输出队伍编号)。

输入格式

第一行两个整数 n,mn, m,分别表示队伍数和项目数。

接下来 mm 行,每行三个整数 g,s,bg, s, b,表示这个项目的金牌、银牌、铜牌分别获得的队伍编号(1g,s,bn1 \le g, s, b \le n,且 g,s,bg, s, b 互不相同)。

输出格式

输出一行,包含 nn 个整数,为按排名从高到低排序后的队伍编号。

样例

4 3
1 2 3
2 3 4
1 3 2
1 2 3 4

样例解释

  • 队伍 11:金牌 22 枚(项目 1133),总分 = 2×5=102\times5 = 10
  • 队伍 22:金牌 11 枚(项目 22),银牌 11 枚(项目 11),铜牌 11 枚(项目 33),总分 = 5+3+1=95+3+1=9,金 111111
  • 队伍 33:银牌 22 枚(项目 2233),铜牌 11 枚(项目 11),总分 = 3×2+1=73\times2 + 1 = 7,金 002211
  • 队伍 44:铜牌 11 枚(项目 22),总分 = 11

按规则排序得到 1,2,3,41, 2, 3, 4

数据范围

  • 1n1051 \le n \le 10^5
  • 1m1051 \le m \le 10^5
  • 输入保证所有金、银、铜牌队伍编号合法。