CF1779F.Xorcerer's Stones

普及/提高-

通过率:0%

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Misha had been banned from playing chess for good since he was accused of cheating with an engine. Therefore, he retired and decided to become a xorcerer.

One day, while taking a walk in a park, Misha came across a rooted tree with nodes numbered from 11 to nn . The root of the tree is node 11 .

For each 1in1\le i\le n , node ii contains aia_i stones in it. Misha has recently learned a new spell in his xorcery class and wants to test it out. A spell consists of:

  • Choose some node ii ( 1in1 \leq i \leq n ).
  • Calculate the bitwise XOR xx of all aja_j such that node jj is in the subtree of ii ( ii belongs to its own subtree).
  • Set aja_j equal to xx for all nodes jj in the subtree of ii .

Misha can perform at most 2n2n spells and he wants to remove all stones from the tree. More formally, he wants ai=0a_i=0 to hold for each 1in1\leq i \leq n . Can you help him perform the spells?

A tree with nn nodes is a connected acyclic graph which contains n1n-1 edges. The subtree of node ii is the set of all nodes jj such that ii lies on the simple path from 11 (the root) to jj . We consider ii to be contained in its own subtree.

输入格式

The first line contains a single integer nn ( 2n21052 \leq n \leq 2\cdot 10^5 ) — the size of the tree

The second line contains an array of integers a1,a2,,ana_1,a_2,\ldots, a_n ( 0ai310 \leq a_i \leq 31 ), describing the number of stones in each node initially.

The third line contains an array of integers p2,p3,,pnp_2,p_3,\ldots, p_n ( 1pii11 \leq p_i \leq i-1 ), where pip_i means that there is an edge connecting pip_i and ii .

输出格式

If there is not a valid sequence of spells, output 1-1 .

Otherwise, output a single integer qq ( 0q2n0 \leq q \leq 2n ) in the first line — the number of performed spells.

In the second line output a sequence of integers v1,v2,,vqv_1,v_2,\ldots,v_q ( 1vin1 \leq v_i \leq n ) — the ii -th spell will be performed on the subtree of node viv_i . Please note that order matters.

If multiple solutions exist, output any. You don't have to minimize the number of operations.

输入输出样例

  • 输入#1

    2
    13 13
    1

    输出#1

    1
    1
  • 输入#2

    7
    5 2 8 3 4 1 31
    1 1 2 2 3 3

    输出#2

    -1
  • 输入#3

    9
    3 31 1 2 7 30 7 3 1
    1 1 1 2 5 5 3 4

    输出#3

    6
    3 2 3 1 2 2

说明/提示

Please refer to the following pictures for an explanation of the third test. Only the first 44 spells are shown since the last 22 do nothing. The first picture represents the tree initially with the number of stones for each node written above it in green. Changes applied by the current spell are highlighted in red.

首页