luogu#P16441. [XJTUPC 2026] 直播获奖

[XJTUPC 2026] 直播获奖

背景

你常常追忆过去。生命瞬间定格在脑海。你将背后的时间裁剪、折叠、蜷曲,揉捻成天上朵朵白云。

时间被裁剪、折叠、蜷曲。咦,你好像不在联合省选 2025 的赛场上。你该在哪里停留?你问你自己。

时光荏苒,小 Z 和小 J 也会散去。而你们和一个人保持连接的方式就是记住,仅此而已。

时光走过,小 Z 和小 J 会再遇见。回首往事,大家都过上了各自想要的生活。

好像有什么不对。咦,你好像也不在 NOI2024 的赛场上。你该在哪里停留?你问你自己。

NOI2233 即将举行。为了增加观赏性,FFC 决定逐一评出每个选手的成绩,并直播即时的获奖分数线。

你终于想到了。你今年刚上初一,你正在 CSP-J 2020 的赛场上,比赛的第二题叫“直播获奖”。由于你不会桶排序,你在这题中取得了 95 分的高分。

咦,你怎么预知了你在“直播获奖”这一题上的得分呢?这真的可能吗?这可能被完成吗?

一年一度的 XJTUPC 又要举办了,但是老牌杂鱼猫娘出题人小标准突然有急事要回趟渐江。

原来你已经退役了。你正坐在 XJTUPC2026 的赛场上做一道叫做“直播获奖”的题目。你该在哪里停留?你问你自己。

题目描述

你正在玩一款被称为「ZJOI2022」的游戏。游戏发生在一个被称作「渐江」的幻想世界。你将扮演一位名为「咋克」的神秘角色,在自由的旅行中邂逅性格各异、能力独特的同伴们,和他们一起击败强敌,找回失散的亲人------同时,逐步发掘「九条可怜」的真相。

每位玩家在结束游戏后,拥有四个属性:

  • 游戏 UID。游戏 UID 是每一位玩家的唯一标识符,为一个正整数。所有玩家的 UID 各不相同。
  • 游玩游戏所使用的元素。元素为「阴」或者「阳」。
  • 所在的游戏公会。每一位玩家属于一个公会,公会由正整数编号标识。
  • 游戏成绩。游戏成绩为一个正整数。保证所有玩家的成绩互不相同。

这个游戏使用非常特别的结算方式。具体来说,「评测机」将会按 UID 从小到大的顺序揭露每一位玩家的总分。每位玩家的分数被揭露以后,预示着胜利者的「渐江省队」名单会随之更新。「渐江省队」由 A 队和 B 队组成,两队的成员互不重叠。

根据当前所有已揭露的玩家,按照下述规则更新「渐江省队」名单:

规则一:A 队选拔

设当前已揭露的玩家集合为 SS。记集合 SS 的大小为 S|S|

A 队最多容纳 55 位玩家。设 A 队中的玩家构成集合 AA,按以下步骤确定 AA

  • S4|S| \le 4,则 A=SA = S
  • S5|S| \ge 5,则:
    • SS 中的玩家按成绩从高到低排序,取前 55 名构成集合 TT
    • TT 中同时包含「阴」和「阳」两种元素,则 A=TA = T
    • 否则,TT 中所有玩家均为同一元素 xx(即全「阴」或全「阳」)。此时:
      • SS 中元素为 xx 的玩家中成绩最高的前 44 名,记作 AxA_x
      • SS 中元素为另一种元素 yyyxy \neq x)的玩家中成绩最高的 11 名(若存在),记作 aya_y
      • aya_y 存在,则 A=Ax{ay}A = A_x \cup \{a_y\};否则 A=AxA = A_x

规则二:B 队选拔

在确定 A 队后,从剩余玩家 SAS \setminus A 中选拔 B 队。

B 队最多容纳 1212 位玩家。设 B 队中的玩家构成集合 BB,按以下步骤确定 BB

  • SAS \setminus A 中的玩家按成绩从高到低排序,得到一个顺序列表。
  • 初始化 BB 为空,并记录当前省队(ABA \cup B)中每个公会已入选的人数。
  • 按顺序遍历列表中的每位玩家:
    • 若当前 B 队人数已达 1212,则停止选拔。
    • 否则,检查该玩家所属的公会:若该公会在省队中的当前人数严格小于 55,则将该玩家加入 B 队,并更新该公会的人数;否则跳过该玩家,继续下一个。
  • 当列表遍历完毕或 B 队满 1212 位玩家时,选拔结束。

你需要在每一位玩家的分数被揭露以后,给出当前的「渐江省队」名单。

你需要给出当前的「渐江省队」名单中所有玩家的 UID,按以下顺序排列:

  • 先列出 A 队的所有玩家的 UID,再列出 B 队的所有玩家的 UID;
  • 在同一队内,玩家 UID 按从小到大的顺序排列。

输入格式

输入的第一行,包含一个正整数 nn1n1001\le n\le 100),表示游戏的玩家人数。

接下来 nn 行,第 ii 行包含三个整数 xi,yix_i,y_iziz_i0xi1,1yin,1zi1090\le x_i\le 1,1\le y_i\le n,1\le z_i\le 10^9),用一个空格分隔,表示一位玩家的信息。具体地:

  • 游戏 UID 为 ii
  • xi=0x_i=0 时,所使用的元素为「阴」;xi=1x_i=1 时,所使用的元素为「阳」。
  • 所在的游戏公会编号为 yiy_i
  • 游戏成绩为 ziz_i

保证所有玩家的成绩互不相同。

输出格式

输出共 nn 行,第 ii 行包含若干个整数,用一个空格分隔,表示前 ii 位玩家的成绩被揭露后,「渐江省队」名单中所有玩家的 UID。

每一行先输出 A 队的所有玩家的 UID,再输出 B 队的所有玩家的 UID。同一个队内按照 UID 从小到大的顺序输出。

20
0 1 87
1 8 300
0 2 12
0 8 260
1 3 145
1 8 240
0 4 60
0 8 230
1 5 170
1 8 220
0 6 50
1 7 215
0 9 80
1 10 200
0 11 40
0 8 20
1 8 150
0 8 210
1 12 190
0 13 70
1
1 2
1 2 3
1 2 3 4
1 2 3 4 5
1 2 4 5 6 3
1 2 4 5 6 3 7
2 4 5 6 8 1 3 7
2 4 6 8 9 1 3 5 7
2 4 6 8 10 1 3 5 7 9
2 4 6 8 10 1 3 5 7 9 11
2 4 6 8 10 1 3 5 7 9 11 12
2 4 6 8 10 1 3 5 7 9 11 12 13
2 4 6 8 10 1 3 5 7 9 11 12 13 14
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15 19
2 4 6 8 10 1 3 5 7 9 11 12 13 14 15 19 20