P3703 [SDOI2017]树点涂色

    • 345通过
    • 748提交
  • 题目提供者 ElevenDimensions
  • 评测方式 云端评测
  • 标签 Link-Cut Tree,LCT 树链剖分,树剖 线段树 各省省选 2017 山东 高性能
  • 难度 省选/NOI-
  • 时空限制 1000ms / 128MB

题解

  • 提示:收藏到任务计划后,可在首页查看。
  • 最新讨论 显示

    推荐的相关题目 显示

    题目描述

    Bob有一棵 $n$ 个点的有根树,其中1号点是根节点。Bob在每个点上涂了颜色,并且每个点上的颜色不同。

    定义一条路径的权值是:这条路径上的点(包括起点和终点)共有多少种不同的颜色。

    Bob可能会进行这几种操作:

    • 1 x

    把点 $x$ 到根节点的路径上所有的点染上一种没有用过的新颜色。

    • 2 x y

    求 $x$ 到 $y$ 的路径的权值。

    • 3 x

    在以x为根的子树中选择一个点,使得这个点到根节点的路径权值最大,求最大权值。

    Bob一共会进行 $m$ 次操作

    输入输出格式

    输入格式:

    第一行两个数 $n,m$ 。

    接下来 $n-1$ 行,每行两个数 $a,b$ ,表示 $a$ 与 $b$ 之间有一条边。

    接下来 $m$ 行,表示操作,格式见题目描述

    输出格式:

    每当出现2,3操作,输出一行。

    如果是2操作,输出一个数表示路径的权值

    如果是3操作,输出一个数表示权值的最大值

    输入输出样例

    输入样例#1: 复制
    5 6
    1 2
    2 3
    3 4
    3 5
    2 4 5
    3 3
    1 4
    2 4 5
    1 5
    2 4 5
    输出样例#1: 复制
    3
    4
    2
    2

    说明

    共10个测试点

    测试点1, $1\leq n,m\leq1000$

    测试点2、3,没有2操作

    测试点4、5,没有3操作

    测试点6,树的生成方式是,对于 $i(2\leq i \leq n)$ ,在1到 $i-1$ 中随机选一个点作为i的父节点。

    测试点7, $1\leq n,m\leq 50000$

    测试点8, $1\leq n \leq 50000$

    测试点9,10,无特殊限制

    对所有数据, $1\leq n \leq 10^5$ , $1\leq m \leq 10^5$

    时间限制:1s

    空间限制:128MB

    提示
    标程仅供做题后或实在无思路时参考。
    请自觉、自律地使用该功能并请对自己的学习负责。
    如果发现恶意抄袭标程,将按照I类违反进行处理。