题库练习 The Tree
← 上一题 下一题 →

A11880 | The Tree

时间限制1s
内存限制256MB
通过 / 提交0/0

题目描述

Abendsen assigned a mission to Juliana. In this mission, Juliana has a rooted tree with $n$ vertices. Vertex number $1$ is the root of this tree. Each vertex can be either black or white. At first, all vertices are white. Juliana is asked to process $q$ queries. Each query is one of three types:

1. If vertex $v$ is white, mark it as black; otherwise, perform this operation on all direct sons of $v$ instead.
2. Mark all vertices in the subtree of $v$ (including $v$ ) as white.
3. Find the color of the $i$ -th vertex.

![](/uploads/acgo/image/c9246a4b35314127_fe867988a16d.jpeg)An example of operation "1 1" (corresponds to the first example test). The vertices $1$ and $2$ are already black, so the operation goes to their sons instead.Can you help Juliana to process all these queries?

输入格式

The first line contains two integers $n$ and $q$ ( $2\leq n\leq 10^5$ , $1\leq q\leq 10^5$ ) — the number of vertices and the number of queries.

The second line contains $n-1$ integers $p_2, p_3, \ldots, p_n$ ( $1\leq p_i<i$ ), where $p_i$ means that there is an edge between vertices $i$ and $p_i$ .

Each of the next $q$ lines contains two integers $t_i$ and $v_i$ ( $1\leq t_i\leq 3$ , $1\leq v_i\leq n$ ) — the type of the $i$ -th query and the vertex of the $i$ -th query.

It is guaranteed that the given graph is a tree.

输出格式

For each query of type $3$ , print "black" if the vertex is black; otherwise, print "white".

输入输出样例

输入 #1
8 10
1 2 1 2 5 4 5
1 2
3 2
3 1
1 1
1 1
3 5
3 7
3 4
2 2
3 5
输出 #1
black
white
black
white
black
white
输入 #2
8 11
1 1 2 3 3 6 6
1 1
1 1
1 3
3 2
3 4
3 6
3 7
2 3
1 6
3 7
3 6
输出 #2
black
white
black
white
white
black
C++ 编辑器
输入
输出