比赛场次 628
比赛名称 20240913练习
比赛状态 已结束比赛成绩
开始时间 2024-09-13 19:00:00
结束时间 2024-09-13 22:00:00
开放分组 全部用户
注释介绍
题目名称 白黑树
输入输出 C_Tree.in/out
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试点数 5 简单对比
用户 结果 时间 内存 得分
Gravatar┭┮﹏┭┮ AAAAA 0.691 s 19.54 MiB 100
Gravatardjyqjy AAAAA 0.702 s 12.50 MiB 100
Gravatar蜀山鸭梨大 WWWWW 0.776 s 3.38 MiB 0
Gravatar郑霁桓 WWWWW 0.790 s 3.32 MiB 0
Gravatarflyfree WWWWW 0.830 s 40.51 MiB 0

白黑树

★★★   输入文件:C_Tree.in   输出文件:C_Tree.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目描述】

给定一棵有根树,树根为1

要求支持以下操作:

1、M u:把u节点反色(即黑色变成白色,白色变成黑色)

2、Q u:查询u和所有黑色节点的所有LCA中深度最小的LCA

【输入格式】

第一行n,m 表示节点总数和操作次数

以下n-1行,每行u,v描述一条边的两个端点

以下m行,每行一个操作,如题意所示

一开始,树上节点都是白色的

n,m<=200000

【输出格式】

对于每个Q询问,如果树上没有黑色节点,输出-1

否则输出对应的答案

【样例输入】

5 5
2 1
3 1
4 1
5 4
Q 5
M 3
Q 3
Q 2
M 1

【样例输出】

-1
3
1