题解:P17140 [NOI 2026] 线段
__biu_biu_biu__ · · 题解
前情提要
本题解讲的较为详细,但可能对大佬来说有点啰嗦了,不喜勿喷!
注意到构成的图是一个树可以转换为线段
直接转移需要在左右两个端点进行枚举,不好转移。为了方便转移,我们考虑将线段按左端点从左到右排序,如果左端点相同则按右端点升序排序。
然后按顺序遍历线段,这样可以做到不用考虑左端点。
我们再次分析该线段与恰好一个线段有交点这个性质,通过画图:
黑色线段是已经添加的,蓝色线段是还未添加的,我们发现只有当蓝色线段被【已经添加进去的线段中
因此,我们考虑定义
对于包含关系,有转移:
对于相交关系,有转移
可以直接按顺序线段枚举即可,如果不选择
时间复杂度
首先将第一维滚动数组优化掉,空间限制满足条件;然后对于求和的部分有限制
corner case 是
代码,怎么这么好写,20min 就写完了,这下该拜我了。