组队分配
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld

题目描述

ACM团队为即将到来的省赛举行了一场校内选拔赛,这场比赛共有个人参与,每个人在比赛中的排名已经给出。
现在团队希望按照排名分配,组成个队伍。组队的规则是:排名从,名次为 的人组成一个队伍,称为“ACM-'a'”队,例如由第一名、第二名、第三名组成的队伍就叫“ACM-0”,由第四名、第五名、第六名组成的队伍就叫“ACM-1”。
现在给你这个人的名字以及排名,需要聪明的你给出最终的组队方案。组队方案按照如下规则输出:每个队伍一行,按“队名 队员一姓名 队员二姓名 队员三姓名”的格式输出,要求每个队中的队员按照排名从大到小排列。

输入描述:

数据的第一行有一个t,代表t组数据
每组数据的第一行有一个n,代表题目中的n。
接下来的3n行,每一行由一个字符串s和一个数字a组成,s和a由一个空格隔开,保证字符串中不含有空格。

输出描述:

输出n行,每行按照“队名 队员一姓名 队员二姓名 队员三姓名”的格式输出,行末无多余空格。
示例1

输入

复制
1
1
a 1
b 3
c 2

输出

复制
ACM-0 b c a