T550973 202412H 吃饭大赛总决赛

题目背景

声明:本题的晋级规则纯属虚构,与真正的 ICPC 竞赛 EC Final 晋级规则有所区别。

题目描述

在 ICPC(Interactive Clever Pig Contest,交互聪明猪猪大赛)中表现出色的猪猪队伍可以晋级至吃饭大赛总决赛(Eating Contest Final,EC Final)。 共有 $m$ 场 ICPC 比赛,从 $1$ 到 $m$ 编号,每场比赛有**至多** $t$ 支猪猪队伍参与。 有 $n$ 条比赛排名记录,每一条中包含了一支队伍在某场比赛中取得的成绩信息,分别是队伍名称、三个猪队员的名字、比赛编号和队伍排名。 我们认为不同猪的名字互不相同,名字相同的猪一定是同一只猪。同时,我们认为每一条记录都是一个新的队伍所打出的成绩。即使队伍名称和猪的名字与之前的队伍相同,也认为是一个新的队伍。 同时,数据保证: - 一支队伍恰好有三个不同的猪队员; - 对于某场比赛,所有记录中的队伍排名互不相同; - 对于某场比赛,所有记录中的队伍的猪队员互不相同; - 对于某场比赛,如果存在排名为 $r$($r \ne 1$)的队伍,那么记录中一定存在排名为 $r-1$ 的队伍。 你需要求出所有可以晋级至 EC Final 的队伍的名称。晋级 EC Final 的规则如下: 定义一支队伍可以晋级至 EC Final 当且仅当该队伍的所有猪成员现在都还没有晋级至 EC Final; 接下来进行至多 $k$ 次操作,如果不存在可以晋级的队伍,则停止操作。否则,会选出一个可以晋级的队伍晋级至 EC Final;这支队伍需要满足:在所有可以晋级的队伍中,它的排名是最小的;如果有多支队伍满足条件,则选择比赛编号最小的队伍。

输入格式

第一行输入四个整数,依次表示记录条数 $n$,比赛场数 $m$,比赛容量 $t$ 和晋级名额数量 $k$。 接下来 $n$ 行,每行包含四个字符串和两个正整数 $s_0, s_1, s_2, s_3, id, r$,其中 $s_0$ 表示队伍名称,$s_1, s_2, s_3$ 表示三个猪队员的名字,$id$ 表示比赛编号,$r$ 表示队伍排名。 保证输入时三个猪队员的名字是按照字典序从小到大排列的。

输出格式

首先输出一个整数 $c$,表示一共有多少支队伍晋级 EC Final。 接下来输出 $c$ 行,每行四个字符串,表示一支晋级至 EC Final的队伍名称和三个猪队员的名字。要求猪队员的名字按照字典序从小到大的顺序输出(与输入的顺序一致)。 本题采用 special judge 进行评测,你可以按任意顺序输出晋级到 EC Final 的队伍,但必须保证猪队员的名字按字典序输出。

说明/提示

### 样例 1 解释 共有两场比赛,排名情况如下: | | 比赛 1 | 比赛 2 | |:-:|:-:|:-:| |第 $1$ 名 |longname(dx fr woruo)|quntongtai(fr fusu woruo) | | 第 $2$ 名|sdutcs(wtz ysl zay) | longname(booot boot bot)| 按如下方法选出晋级队伍: - 首先找到排名最小可晋级的队伍 `longname(dx fr woruo)` 和 `quntongtai(fr fusu woruo)`,其中前者的比赛编号更小,所以前者的队伍晋级。 - 接下来,因为 `fr` 和 `woruo` 已经晋级,所以队伍 `quntongtai(fr fusu woruo)` 失去了晋级 EC Final 的资格。 - 接下来,找到两场比赛的第二名的队伍,用类似的方法依次选择它们晋级 EC Final。 ### 数据规模与约定 | 测试点编号 | 特殊约定 | | :---: | :---: | | $1$ | $k = 1$ | | $2,3$ | $m = 1$ | | $4,5$ | $t = 1$ | | $6,7$ | 每只猪只会参加一场比赛 | | $8,9,10$ | 无 | 对于所有数据,保证 $1 \leq k \leq 1000$,$1 \le id \leq m \le 100$,$1 \le r \leq t \leq 100$,$1 \leq n \leq m \times t$,输入的所有字符串的长度不超过 $10$,字符串仅含小写英文字母,每支队伍的三个队员名字互不相同,输入的每条记录互不相同。 ### 提示 请注意,输入**不**保证一场比赛里的所有队伍名字不同,也**不**保证猪队员的名字和队伍名字不同。