我们许多人的电脑上都有这个问题:我们制作了许多完全相同文件的副本,这占用了更多的内存。因此,你最终决定编写一个程序来删除所有重复的文件。
以下是你的电脑工作的方式:每当你创建一个新文件时,它都会获得一个唯一的 ID(当你复制一个现有文件时,新副本会获得一个新的 ID)。ID 与时间相关,因此较旧的文件具有较小的 ID(但 ID 不一定是连续的)。此外,每个文件都有一个名称,但多个文件可以具有相同的名称,当两个或多个文件具有相同的名称时,这意味着它们完全相同,并且它们只是其中 ID 最小的那个文件的完全相同的副本。
给定所有文件的列表及其名称和 ID,你的任务是删除所有重复项,只保留每个文件的最旧副本。
输入格式
你的程序将在一个或多个测试用例上进行测试。输入的第一行是一个整数 $T$ ($1 \le T \le 100$),表示测试用例的数量。接下来是 $T$ 个测试用例。
每个测试用例以包含一个整数 $N$ ($1 \le N \le 10^5$) 的行开始,表示文件的数量,随后是 $N$ 行,每行包含文件名,后跟一个空格,再后跟文件 ID。文件名是一个最多包含 10 个小写英文字母的非空字符串,ID 是一个最多为 $10^5$ 的正整数。在每个测试用例中,所有 ID 都是唯一的。
输出格式
对于每个测试用例,打印一行,包含不会被删除的文件的 ID,ID 应按升序排列并用单个空格分隔。
样例
输入 1
2 2 aaa 6 aa 5 3 file 3 file 2 file 1
输出 1
5 6 1