1842: 金币!

内存限制:256 MB 时间限制:2.000 S
评测方式:文本比较 命题人:
提交:43 解决:14

题目描述

卷卷作为本场比赛的讲解,他想要提前了解本场比赛的最终的可能情况,你能帮帮他吗? 一共有 n 支队伍参加比赛,每个队伍初始时有一些金币。比赛每一轮随机挑两个金币数不为0的队伍,然后金币多的队伍获胜,金币少的队伍把金币全部给金币多的(金币数量相同则随机),直到最后只有一个队伍有金币, 这个队伍获胜。最终求出有几个队伍是可能获胜的、是哪些队伍。

输入

第一行包含一个整数t(1≤t≤10^4)测试用例的数量。 接下来是t个测试用例。每一个测试用例的第一行由一个正整数n(1≤n≤2⋅10^5)组成,代表参加锦标赛的选手人数。第二行包含n个正整数a(1<=a<=10^9),代表玩家拥有的代币数量。

输出

对于每个测试用例,打印有可能赢得冠军的玩家的数量。在第二行下一行按递增顺序打印这些玩家的编号。玩家按照他们出现在输入中的顺序从1开始编号,以空格隔开。

样例输入 复制

2
4
1 2 4 3
5
1 1 1 1 1

样例输出 复制

3
2 3 4 
5
1 2 3 4 5