luogu#P8844. [传智杯 #4 初赛] 小卡与落叶

[传智杯 #4 初赛] 小卡与落叶

题目背景

坐在飞驰的火车上,望着窗外泛黄的树叶,“又是一个冬天”,小卡心想。这是一个万物凋零的季节,一阵寒风刮过,树叶就被染黄了,再一阵寒风刮过,便是满地金黄。

百无聊赖之际,小卡发现,树叶变黄是有规律的,每一颗树,只有下面一半是黄的,上半部分都是绿的。小卡心想,该怎么统计黄色的叶子个数呢?

题目描述

给你一棵有 n(1n105)n(1\le n\le 10^5) 个结点的有根树,根结点标号为 11,根节点的深度为 11,最开始整棵树的所有结点都是绿色的。

小卡有 m(1m105)m(1\le m \le 10^5) 个操作。

操作一:把整棵树都染绿,之后让深度 x\ge x 的结点变黄。

操作二:询问一个结点 xx 的子树中有多少个黄色结点。

输入格式

第一行两个正整数 n,mn,m,表示树的结点个数和操作个数。

接下来 n1n-1 行,每行两个正整数 x,yx,y,表示树上的一条边。

接下来 mm 行,每行两个正整数 op,x(1xn)op,x(1\le x\le n),如果 op=1op=1 则表示操作一,否则表示操作二。

输出格式

对于每个操作二,输出一行一个正整数,表示 xx 的子树中黄色结点的个数。

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

提示

样例一中的树如下:

第一次染色将 4455 染为黄色,查询 5,2,15,2,1 三个点的子树,答案分别为 1,2,21,2,2

第二次染色将 2,3,4,52,3,4,5 染为黄色,查询 1,4,5,21,4,5,2 四个点的子树,答案分别为 4,2,1,34,2,1,3