#P5014. 「长乐集训 2017 Day5」红与蓝
「长乐集训 2017 Day5」红与蓝
Description
小红和小蓝正在给定的一棵树上进行游戏。这棵树中每个结点会有一个颜色,初始时非叶结点均是无色,叶子结点会是红色,蓝色或是无色三种情况之一。
现在小红和小蓝轮流给一个无色的叶子结点染上颜色(小红会染上红色,小蓝染上蓝色),小红先染。所有叶子都有颜色后,非叶结点的颜色将会逐一确定:一个非叶结点的颜色是它所有儿子的颜色中出现次数较多的那个(保证每个结点都有奇数个儿子)。最后,根是谁的儿子,谁就会获胜。
现在请你告诉小红,她是否能赢,若能赢的话,还请你告诉她,她第一步选择哪些叶子能赢。
Input Format
第一行一个整数 表示数据组数。
每组数据第一行一个整数 表示树的结点数,结点从 编号。
第二行 个整数,第 个整数,第 个整数 表示 号结点的父亲,保证 注意不保证
第三行 个整数,第 个整数 表示 号结点初始时的颜色, 表示红色, 表示蓝色, 表示无色。保证非叶结点都是无色。
Output Format
每组数据输出一行。
若小红可以赢则先输出一个正整数 表示第一步可以选的叶子数,接下来 个正整数表示那些叶子的编号,要求从小到大输出。
若你只知道小红能赢,则你可以只输出一行单独一个
否则(小红不能赢),请输出一个整数
Sample
样例输入
2
2
0 1
-1 -1
2
0 1
-1 1
样例输出
1 2
-1
Hint
的数据:
的数据:
的数据:,,若你判断对了胜负,你就可以得到该测试点一半的分数。