题目描述
老师有一项重要的任务——弄清楚要为他的同学们购买什么类型的零食。
老师的 $N$ 名同学($2\le N\le 10^5$)编号为 $1$ 到 $N$,每名同学喜欢恰好一种类型的零食 $h_i$($1\le h_i\le N$)。他希望他的所有同学都喜欢同一种零食。
为了实现这一目标,老师可以主持焦点小组访谈。一次焦点小组访谈为让编号从 $i$ 到 $j$ 的连续范围内的所有同学聚集在一起参加一次访谈。如果有一种零食是小组中超过一半的同学喜欢的,则此次焦点小组访谈结束后,所有同学最终都会喜欢这种零食。如果不存在这种类型的零食,那么同学们不会改变他们喜欢的零食类型。例如,在由 $16$ 名同学组成的焦点小组访谈中,需要有其中 $9$ 名或更多的同学具有相同的零食喜好,才能使其余同学改变其喜好以与之一致。
老师想知道哪些类型的零食有可能变为同时受到所有同学的喜爱。他一次只能主持一个焦点小组访谈,但为了使所有同学都喜欢同一类型的零食,他可以根据需要任意多次地主持焦点小组访谈。
输入格式
输入的第一行包含一个整数 $T$,为独立的测试用例的数量($1\le T\le 10$)。
每一个测试用例的第一行包含 $N$。
第二行包含 $N$ 个整数,为同学们喜爱的零食类型 $h_i$。
输入保证所有测试用例的 $N$ 之和不超过 $2\cdot 10^5$。
输出格式
输出 $T$ 行,对于每个测试用例输出一行。
如果可能使所有同学同时喜欢同一种零食,则以升序输出所有可能的此类零食的类型,否则输出 $-1$。在同一行内输出一列整数时,相邻的数用空格分隔,并确保行末没有多余空格。
输入输出样例 #1
输入 #1
5
5
1 2 2 2 3
6
1 2 3 1 2 3
6
1 1 1 2 2 2
3
3 2 3
2
2 1
输出 #1
2
-1
1 2
3
-1
说明/提示
样例解释
在输入样例中,有 5 个测试用例。
在第一个测试用例中,仅可能使所有同学喜欢种类 $2$。老师可以通过主持一次所有同学的焦点小组访谈达到这一目的。
在第二个测试用例中,可以证明没有同学会改变他们喜爱的零食种类。
在第三个测试用例中,有可能使所有同学喜欢种类 $1$,可以通过主持三次焦点小组访谈达到这一目的——首先使同学 $1$ 到 $4$ 进行一次焦点小组访谈,随后使同学 $1$ 到 $5$ 进行一次焦点小组访谈,随后使同学 $1$ 到 $6$ 进行一次焦点小组访谈。以类似的逻辑,依次操作同学 $3$ 到 $6$,随后是同学 $2$ 到 $6$,随后是同学 $1$ 到 $6$,我们可以使所有同学喜欢种类 $2$。
在第四个测试用例中,有可能使所有同学喜欢种类 $3$,可以通过主持一次所有同学的焦点小组访谈达到这一目的。
在第五个测试用例中,可以证明没有同学会改变他们喜爱的零食种类。
测试点性质
- 测试点 $2$:$N=2$。
- 测试点 $3-4$:$N\le 50$。
- 测试点 $5-6$:对于所有的 $1\le i\le N−1$,有 $h_i\le h_{i+1}$。
- 测试点 $7-15$:没有额外限制。

鲁ICP备2025150228号