#9918. 森林信使

    ID: 9918 传统题 1000ms 256MiB 尝试: 7 已通过: 2 难度: 10 上传者: 标签>LCA树上差分边权统计路径覆盖离线处理边序输出

森林信使

题目描述

在一片神秘的森林中,有 nn 个古老的树屋,由 n1n-1 条蜿蜒的小径连接。这些小径构成了一棵树,确保任意两个树屋之间都有一条唯一的路径。

森林中的信使们负责在各个树屋之间传递消息。每次传递消息时,他们会选择两个树屋 (u,v)(u, v),然后沿着从 uuvv 的唯一路径行走。每经过一条小径,他们就会在这条小径上留下一个标记,表示这条小径被使用了一次。

现在,你已经知道了 kk 次消息传递的起点和终点。你的任务是计算每条小径上有多少个标记。

输入格式

第一行包含两个整数 nn2n1052 \leq n \leq 10^5),kk1k1051 \leq k \leq 10^5)分别表示树屋的数量和消息传递的次数。

接下来 n1n-1 行,每行包含两个整数 uiu_iviv_i1ui,vin1 \leq u_i, v_i \leq n),表示第 ii 条小径连接的树屋 uiu_iviv_i

接下来 kk 行,每行包含两个整数 aja_jbjb_j1aj,bjn1 \leq a_j, b_j \leq n),表示第 jj 次消息传递的起点和终点。

输出格式

输出 n1n-1 个整数,表示每条小径上的标记数量。输出的顺序应与输入中小径的顺序一致。

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

样例解释

第一条小径(121-2)被消息传递(353-5)经过一次。

第二条小径(131-3)被消息传递(353-5)经过一次。

第三条小径(242-4)被消息传递(454-5)经过一次。

第四条小径(252-5)被消息传递(454-5)和(353-5)各经过一次,总共两次。

数据范围与提示

  • 对于 100%100\% 的数据,2n1052 \leq n \leq 10^51k1051 \leq k \leq 10^5