A5188. [GESP202503 六级] 树上漫步
编程题
普及-
知识点
题目描述
小 A 有一棵 n 个结点的树,这些结点依次以 1,2,⋯,n 标号。小 A 想在这棵树上漫步。具体来说,小 A 会从树上的某个结点出发,每一步可以移动到与当前结点相邻的结点,并且小 A 只会在偶数步(可以是零步)后结束漫步。现在小 A 想知道,对于树上的每个结点,从这个结点出发开始漫步,经过偶数步能结束漫步的结点有多少个(可以经过重复的节点)。
输入格式
第一行,一个正整数 $n$ 。
接下来 $n−1$ 行,每行两个整数 $u_i$,$v_i$ ,表示树上有一条连接结点 $u_i$ 和结点 $v_i$的边。
接下来 $n−1$ 行,每行两个整数 $u_i$,$v_i$ ,表示树上有一条连接结点 $u_i$ 和结点 $v_i$的边。
输出格式
一行,$n$ 个整数,第 $i$ 个整数表示从结点 $i$ 出发开始漫步,能结束漫步的结点数量。
输入输出样例
输入 #1
3 1 3 2 3
输出 #1
2 2 1
输入 #2
4 1 3 3 2 4 3
输出 #2
3 3 1 3
说明/提示
对于 40% 测试点,保证 $1≤n≤10^3$。
对于所有测试点,保证 $1≤n≤2×10^5$。
对于所有测试点,保证 $1≤n≤2×10^5$。