摘要:"传送门" 很显然可以用圆方树转成一棵树,然后就可以愉快的上树剖了 接下来考虑方点,当路径经过方点的时候,这个方点的贡献应该是它所表示的点双内的所有点的最小值 然后我们可以考虑将每个方点用一个multiset存下当前点双内的所有点权 但是发现修改时需要枚举包含当前圆点相邻的所有方点,当该图是菊花图时 阅读全文
posted @ 2019-03-28 19:26 蒟蒻--lichenxi 阅读 (25) 评论 (0) 编辑
摘要:"传送门" 考虑建立圆方树,然后将圆点权值定为$ 1$(考虑到每个圆点都会被两个方点计算进去,要去重),方点权值定为点双内的点数 然后对于每个起点$s$和终点$f$,中间点的选择方案就是路径权值和,然后对于每个点为中间点计算贡献,$O(n)$dp就好了 代码: c++ include include 阅读全文
posted @ 2019-03-28 16:22 蒟蒻--lichenxi 阅读 (44) 评论 (0) 编辑