摘要:
据说是传说中的男人八题之一,其实是点分治的练手题......不过第一次写调起来还是比较恶心的。话说QZC的论文我是完全没有看懂,上网找了一份代码看看才有点思路。树分治算法大致要分成几个过程:预处理->分治{分割,计算答案,递归处理子树}就是这样了。但实际写起来却要写各种dfs和bfs,但这种东西点双边双写多了就不会出什么错了,我在find计算答案那块调了好久,后来发现dis的下标应该是队列的标记,而不是某个点。我写的点分治,主过程是solve,递归地solve下去:每次先choose一个重心,然后计算这颗树里所有答案(就是计算出每个点到根的距离然后判断即可),然后减去路径不经过根的答案( 阅读全文