题意:给出一棵树,每个点有权值,每次操作可以对一个联通子集中的点全部加1,或者全部减1,且每次操作必须包含点1,问最少通过多少次操作可以让整棵树每个点的权值变为0. 解题关键:自底向上dp,记录up,down两个数组 代表u被加的次数和减的次数,以1为根,则 $up[u] = \max (up[v])$ $down[u] = \max (down[v])$ 而子树确定,该节点改变的次数也就确定了.从而推出该点的up和down的影响,至于为什么取max,因为左右子树可以互相影响,只要包含根节点即可…