#P8805. [蓝桥杯 2022 国 B] 机房

    ID: 7738 远端评测题 1000ms 128MiB 尝试: 3 已通过: 1 难度: 4 上传者: 标签>2022最近公共祖先,LCA前缀和蓝桥杯国赛

[蓝桥杯 2022 国 B] 机房

题目描述

这天,小明在机房学习。

他发现机房里一共有 nn 台电脑,编号为 1 到 nn,电脑和电脑之间有网线连接,一共有 n1n-1 根网线将 nn 台电脑连接起来使得任意两台电脑都直接或者间接地相连。

小明发现每台电脑转发、发送或者接受信息需要的时间取决于这台电脑和多少台电脑直接相连,而信息在网线中的传播时间可以忽略。比如如果某台电脑用网线直接连接了另外 dd 台电脑, 那么任何经过这台电脑的信息都会延迟 dd 单位时间 (发送方和接收方也会产生这样的延迟,当然如果发送方和接收方都是 同一台电脑就只会产生一次延迟)。

小明一共产生了 mm 个疑问:如果电脑 uiu_{i} 向电脑 viv_{i} 发送信息,那么信息从 uiu_{i} 传到 viv_{i} 的最短时间是多少?

输入格式

输入共 n+mn+m 行,第一行为两个正整数 n,mn, m

后面 n1n-1 行,每行两个正整数 x,yx, y 表示编号为 xxyy 的两台电脑用网线 直接相连。

后面 mm 行,每行两个正整数 ui,viu_{i}, v_{i} 表示小明的第 ii 个疑问。

输出格式

输出共 mm 行,第 ii 行一个正整数表示小明第 ii 个疑问的答案。

4 3
1 2
1 3
2 4
2 3
3 4
3 3
5
6
1

提示

【样例说明】

这四台电脑各自的延迟分别为 2,2,1,12,2,1,1

对于第一个询问, 从 2233 需要经过 2,1,32,1,3, 所以时间和为 2+2+1=52+2+1=5。对于第二个询问,从 3344 需要经过 3,1,2,43,1,2,4,所以时间和为 1+2+2+1=61+2+2+1=6

对于第三个询问,从 3333 只会产生一次延迟, 所以时间为 1。

【评测用例规模与约定】

对于 30%30 \% 的数据,保证 n,m1000n, m \leq 1000;

对于 100%100 \% 的数据,保证 n,m105n, m \leq 10^5

蓝桥杯 2022 国赛 B 组 H 题。