对于数组中的一个元素,如果它非零且严格大于它之前的所有元素,则称其为一个“美丽元素”。我们将数组的“美丽值”定义为数组中美丽元素的个数。
给定一个长度为 $n$ 的排列。你希望通过将一些美丽元素变为零来最大化数组的美丽值。注意,某些元素在操作后可能会变为美丽元素,并成为你后续操作的目标。
由于修改数组很累,你决定在最大化数组美丽值的同时,使用最少的操作次数。
如果存在多种方案,输出任意一种即可。
输入格式
输入包含多组测试数据。
第一行包含一个整数 $t$ ($1 \le t \le 10^6$),表示测试数据的组数。对于每组测试数据:
第一行包含一个整数 $n$ ($1 \le n \le 10^6$),表示排列的大小。
第二行包含 $n$ 个整数 $p_i$ ($1 \le p_i \le n$),表示排列中的元素。保证同一组测试数据中所有的 $p_i$ 互不相同。
保证 $\sum n \le 10^6$。
输出格式
对于每组测试数据:
第一行包含两个整数 $b, c$,分别表示修改后数组的最大美丽值和最少操作次数。
第二行包含 $c$ 个整数 $o_i$,表示操作序列。操作 $o_i$ 表示将第 $o_i$ 个元素变为零。你需要确保在进行第 $i$ 次操作时,第 $o_i$ 个元素是美丽元素。
如果存在多种方案,输出任意一种即可。
样例
样例输入 1
2 3 3 1 2 3 1 2 3
样例输出 1
2 1 1 3 0