logo AlgoBeat OnlineJudge
登录 注册

#104164. [BZOJ 4164] 种树

内存限制:256 MiB 时间限制:40000 ms 标准输入输出
题目类型:传统 评测方式:文本比较
上传者: 匿名

题目描述

给定一个初始以 为根的树,每个结点 初始有颜色 。定义一次结点 的「交流」为,将 到当前根的路径上的结点颜色都改为一种从未出现过的颜色,你可以认为第 次交流产生的新颜色的编号为

你需要支持 次如下操作:

  • Make_Root x:记当前的根为 ,则把根替换为 后并对 进行一次交流;
  • Paint x:对结点 进行一次交流;
  • Query x:询问 的子树中所有点到根的路径上平均有多少种颜色,保留 位小数。

输入格式

第一行两个正整数

接下来 行,每行两个整数 表示一条连接点 和点 的边。

接下来 行,每行一个操作,格式见题目描述。

输出格式

对于每个询问,输出一行一个实数表示答案,保留 位小数。

样例

样例输入 #1

8 6
1 2
1 3
2 8
3 4
3 5
3 6
4 7
Query 7
Paint 3
Query 3
Make_Root 5
Paint 2
Query 1

样例输出 #1

4.0000000
2.0000000
1.3333333

数据范围与提示

对于 的数据,