P9746 「KDOI-06-S」合并序列

题目描述

给定一个长度为 $n$ 的序列 $a_1,a_2,\ldots a_n$。 你可以对这个序列进行若干(可能为 $0$)次操作。在每次操作中,你将会: * 选择三个正整数 $i

输入格式

从标准输入读入数据。 **本题含有多组测试数据。** 输入的第一行包含一个正整数 $T$,表示数据组数。 对于每组测试数据,第一行一个正整数 $n$,表示初始序列长度。 第二行 $n$ 个整数 $a_1,a_2,\ldots,a_n$,表示初始序列中每个元素的值。

输出格式

对于每组测试数据: + 若存在一种方案使得序列 $a$ 仅剩一个数,请在输出的第一行输出 `Huoyu`。 + 接下来,在第二行你应该输出一个非负整数 $t$,表示你的操作次数。你需要保证 $0\le t\le n$。 + 接下来 $t$ 行,每行输出三个正整数 $i,j,k$,表示你在这次操作中选择的三个数的值。你需要保证 $i

说明/提示

**【样例解释 #1】** 对于第一组测试数据: * 第一次操作中,$a_3\oplus a_4\oplus a_5=1\oplus4\oplus5=0$,操作后的序列为 $[3,3,0]$; * 第二次操作中,$a_1\oplus a_2\oplus a_3=3\oplus3\oplus0=0$,操作后的序列为 $[0]$。 于是,序列 $a$ 在两次操作后仅剩一个数。 对于第二组测试数据: * 第一次操作,$a_1\oplus a_3\oplus a_4=3\oplus6\oplus5=0$,$s=4$,操作后的序列为 $[4,4,5,1,2,4]$。 * 第二次操作,$a_2\oplus a_3\oplus a_4=4\oplus5\oplus1=0$,操作后的序列为 $[4,0,2,4]$。 * 第三次操作,$a_1\oplus a_2\oplus a_4=4\oplus0\oplus4=0$,$s=2$,操作后的序列为 $[2]$。 于是,序列 $a$ 在三次操作后仅剩一个数。 **【样例 #2】** 见选手目录下的 `merge/merge2.in` 与 `merge/merge2.ans`。 这个样例满足测试点 $6\sim7$ 的条件限制。 **【样例 #3】** 见选手目录下的 `merge/merge3.in` 与 `merge/merge3.ans`。 这个样例满足测试点 $12\sim13$ 的条件限制。 **【数据范围】** 对于所有数据保证:$1\leq T\leq20$,$1\leq n\leq500$,$0\leq a_i