#ABC298Ex. 最小距离之和

最小距离之和

最小距离之和

题目描述

给定一棵有 NN 个顶点的树。顶点编号为 11NN,第 ii 条边连接顶点 AiA_i 和顶点 BiB_i

d(x,y)d(x,y) 表示这棵树中顶点 xx 和顶点 yy 之间的距离。这里,顶点 xxyy 之间的距离指从 xxyy 的最短路径上的边数。

按顺序回答 QQ 个查询。第 ii 个查询如下。

给定整数 LiL_iRiR_i。求 $\displaystyle\sum_{j = 1}^{N} \min(d(j, L_i), d(j, R_i))$。

输入格式

输入按以下格式从标准输入给出:

NN
A1A_1 B1B_1
\vdots
AN1A_{N-1} BN1B_{N-1}
QQ
L1L_1 R1R_1
\vdots
LQL_Q RQR_Q

输出格式

输出 QQ 行。第 ii 行应包含第 ii 个查询的答案。

样例

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

下面说明第一个查询。

由于 d(1,4)=2d(1,4)=2,d(1,1)=0d(1,1)=0,所以 min(d(1,4),d(1,1))=0\min(d(1,4),d(1,1))=0

由于 d(2,4)=2d(2,4)=2,d(2,1)=2d(2,1)=2,所以 min(d(2,4),d(2,1))=2\min(d(2,4),d(2,1))=2

由于 d(3,4)=1d(3,4)=1,d(3,1)=3d(3,1)=3,所以 min(d(3,4),d(3,1))=1\min(d(3,4),d(3,1))=1

由于 d(4,4)=0d(4,4)=0,d(4,1)=2d(4,1)=2,所以 min(d(4,4),d(4,1))=0\min(d(4,4),d(4,1))=0

由于 d(5,4)=1d(5,4)=1,d(5,1)=1d(5,1)=1,所以 min(d(5,4),d(5,1))=1\min(d(5,4),d(5,1))=1

0+2+1+0+1=40+2+1+0+1=4,因此应输出 44

8
4 2
4 1
5 6
6 1
7 6
8 1
3 7
7
8 4
4 4
7 2
4 4
5 3
4 4
6 1
14
16
10
16
14
16
8

数据范围

  • 1N,Q2×1051 \le N, Q \le 2 \times 10^5
  • 1Ai,Bi,Li,RiN1 \le A_i, B_i, L_i, R_i \le N
  • 给定的图是一棵树。
  • 输入中的所有值均为整数。
难度 NOI/NOI+/CTS
通过率
尝试 0
已通过 0
ID
2906
类型
传统题
Time Limit
723ms
Memory Limit
1024MiB
上传者
标签