$n \leq 500$条平面上的线段,问一种挑选方法,使得不存在直线$x=p$与挑选的直线有超过$k$个交点,且选得的直线总长度最长。
横坐标每个点开一个点,一条线段就把对应横坐标连一条容量一费用(-长度)的边;点$x$向点$x+1$连一条容量$k$费用0的边。这里的$k$边限制的是直线上其他不经过这里的地方。
这里有个trick就是有与$x$轴垂直的线段。直接判掉会wa。为此把坐标扩大两倍,如果$l=r$那么$r++$否则$l++$,相当于把一个点拆成两个。
2024-02-01 23:17:58
$n \leq 500$条平面上的线段,问一种挑选方法,使得不存在直线$x=p$与挑选的直线有超过$k$个交点,且选得的直线总长度最长。
横坐标每个点开一个点,一条线段就把对应横坐标连一条容量一费用(-长度)的边;点$x$向点$x+1$连一条容量$k$费用0的边。这里的$k$边限制的是直线上其他不经过这里的地方。
这里有个trick就是有与$x$轴垂直的线段。直接判掉会wa。为此把坐标扩大两倍,如果$l=r$那么$r++$否则$l++$,相当于把一个点拆成两个。