#T2309. 树上收集金币 I(Tree Coin Collecting I)
树上收集金币 I(Tree Coin Collecting I)
链接: https://cses.fi/problemset/task/3114
板块: Advanced Graph Problems
时限: 1.00 s | 内存: 512 MB
题目描述
给定一棵含有 个节点的树。某些节点上有一枚硬币。
你需要回答 个形如“从节点 到节点 的最短路径中,经过至少一个有硬币节点的路径长度是多少”的查询。
输入
第一行包含两个整数 和 :节点数量和查询数量。节点编号为 。
第二行包含 个整数 。若 ,则节点 有硬币;若 ,则节点 没有硬币。你可以假定至少有一个节点有硬币。
接下来有 行描述边。每行包含两个整数 和 :表示节点 与 之间有一条边。
最后有 行描述查询。每行包含两个整数 和 :起点和终点节点。
输出
输出 个整数:各查询的答案。
数据范围
样例输入
5 4
1 0 0 1 0
2 4
2 3
1 3
3 5
1 5
3 2
4 4
5 5
样例输出
2
3
0
4
鲁公网安备37011202002910号