其实感觉蓝书上讲的不是很好
我们假设经历了一些时刻了,每个节点里面现在包含若干个有先后顺序小节点,代表着这些小节点的染色顺序
这题的关键性质其实是,任意时刻,等效权值最大的点一定是会在其父节点里面的小节点依次染完后,立马把里面的小节点按照顺序染完
证明利用邻项交换法
假设当前等效权值最大的点是\(\sum_{i=1}^{m} b_i\),他的父节点是\(\sum_{i=1}^{n}a_i\),而最优序列在\(a\)和\(b\)中间夹了一个\(c\),交换后,设\(a\)之前一共染了\(T\)个点,则为\(\sum_{i=1}^{n}a_i \times (T+i)+\sum_{i=1}^{m} b_i \times (T+n+i) + \sum_{i=1}^{p} c_i \times (T+n+m+i)\),而交换前为\(\sum_{i=1}^{n}a_i \times (T+i)+\sum_{i=1}^{p} c_i \times (T+n+i) + \sum_{i=1}^{m} b_i \times (T+n+p+i)\),两者相减并除以\(mp\)得到\(\frac{\sum_{i=1}^{p} c_i}{p}-\frac{\sum_{i=1}^{m} b_i}{m}<0\),即交换后更优,所以最优序列一定是两者连着染的,就可以一直合并了