#arc0294. [arc029_4]高橋君と木のおもちゃ

[arc029_4]高橋君と木のおもちゃ

给定一棵大小为 NN,根为 11 的树,并指定树上边的方向为编号大的指向编号小的。给定树上点 ii 的权值为 sis_i

现在给定 MM 个操作。每个操作依次进行。对于每个操作 ii,有参数 tit_i,可以选择:

  • 不进行操作
  • 在树上任意选定一个节点 uu 。并对原树进行参数为 tit_i上移操作

参数为 tit_i 的上移操作就是将原图中 uu 以及它的所有祖先(除了根)的权值向父亲节点上移一位(根节点权值被删除),然后再将 sus_u 设为 tit_i

求在经历 MM 次操作之后,最终整棵树的权值和最大是多少。

【输入格式】

第一行一个整数 NN,表示树的大小。

接下来 NN 行,每行一个整数 sis_i,表示 ii 点的权值。

再接下来的 N1N-1 行,每行两个整数 ai,bia_i, b_i,表示 aia_ibib_i 之间有一条边。

2N2N 行一个整数 MM,表示操作的次数。

再接下来的 MM 行,每行一个整数 tit_i

【输出格式】

一个整数,表示操作后整棵树的权值和的最大值。