每个测试文件均包含多组测试数据。第一行输入一个整数 代表数据组数,每组测试数据描述如下:第一行输入两个整数 ,表示序列的长度、每个节点的最大孩子数量。第二行输入 个整数 ,依次表示每一个节点的权值。除此之外,保证单个测试文件的 之和不超过 。
对于每组测试数据,新起一行。如果不存在这样的树,直接输出 ;否则,请参考下方的格式输出:第一行输出一个整数 ,表示选择的根节点编号;此后 行,第 行输出两个整数 ,表示第 条树边连接节点 和 。
6 1 1 1 4 3 1 2 3 4 4 1 1 2 3 4 5 1 2 6 2 1 2 6 2 2 2 2 2 2 2 3 1 1 4 3
1 4 4 1 4 2 4 3 -1 -1 6 2 5 6 5 1 4 6 4 3 5 1 1 2 2 3
对于第一组样例,树上只有一个节点,选择 作为根节点即可;对于第二组样例,其中一种可行的构造方案是选择 作为根节点, 均为根节点的子节点;对于第三组样例,可以证明,不存在一种合法的构造方案。