#P13857. [SWERC 2020] Gratitude

[SWERC 2020] Gratitude

Description

:::align{center}

:::

Ben 听说了 Emmons 和 McCullough 的研究,该研究表明刻意练习感恩能对人的幸福感产生持久影响。由于他也想变得快乐,所以他决定在每天结束时回顾过去的一天,并写下三件他感激的事情,每行一件。在坚持这项练习 NN 天后,他很好奇想知道哪些事物在他的清单中出现得最频繁。请帮助 Ben 找出他最常感激的 KK 件事物。

Input Format

输入的第一行包含两个以空格分隔的整数 NNKK。随后是 3N3N 行,包含 Ben 在 NN 天中的记录。你可以假设对应同一天的三行中没有重复项。也就是说,如果你将输入划分为 NN 个连续 3 行的块,则每个块中不会包含两个相同的行。

Output Format

输出应代表 Ben 感激的事物列表,按在 Ben 清单中出现的频率排序(出现次数最多的项排在最前面)。如果两个项频率相同,则最近出现的项应排在前面。也就是说,如果出现次数相同,则最后出现在输入中较晚位置的项在输出中应排在较前的位置。最后,如果 Ben 的列表中有超过 KK 个不同的项,你的输出应只包含前 KK 个项(根据要求的顺序)。

2 2
Supportive parents
Being able to solve a hard problem
Good food
Fun game with friends
Good food
Being healthy
Good food
Being healthy
2 6
Supportive parents
Being able to solve a hard problem
Good food
Fun game with friends
Good food
Being healthy
Good food
Being healthy
Fun game with friends
Being able to solve a hard problem
Supportive parents

Hint

限制条件

  • 1K3N100,0001 \le K \le 3N \le 100,000

  • 每个输入行最多包含 5050 个 (ASCII) 字符。

样例解释 1

Good food\texttt{Good food} 是 Ben 列表中唯一出现两次的项目,因此它应在输出中排在第一位。其他所有项目在输入中出现一次,但 Being healthy\texttt{Being healthy} 因出现时间最近而优先。

样例解释 2

这里 Ben 感激的不同项目只有 55 个,因此输出只有 55 行。在此列表中,Good food\texttt{Good food} 在输出中排在第一,因为它在输入中出现了两次,而其他项目则按在 Ben 列表中最后出现的位置排序。