Larry the magical panda is playing a new game once again! This time, having gotten bored of playing with bamboo sticks, Larry is playing the game on an entire bamboo tree with nodes labeled from
to
. Being a tree, it has
edges and each edge has distance
. Furthermore, each node has an additional value
associated with it. Being a magical panda, Larry can teleport from a node
to any node
with distance less than or equal to a given constant
from
. The teleportation comes at the cost of
. For each node
, what is the minimum cost for Larry to reach
if he starts the game at node
?
Constraints
Subtask 1 [10%]
Subtask 2 [90%]
No additional constraints.
Input Specification
The first line will contain two integers, and
.
The following line will contain integers
.
The following lines will each contain two integers,
and
, denoting an edge between nodes
and
.
Output Specification
Output space separated integers, the
-th of which represents the minimum cost for Larry to reach node
.
Sample Input 1
2 1
1 1
1 2
Sample Output 1
0 1
Sample Input 2
6 3
100 100 100 100 100 1
1 2
2 3
3 4
4 5
3 6
Sample Output 2
0 100 100 100 101 1
Comments
I believe that there are anti-hashing cases in batch 1. I recommend using a custom hash function if you choose to use unordered_map or gp_hash_table.