-
solution
任何一个将羊群划分成奇数的对角线不可选,用极角排序可以预处理。
然后就是凸多边形上三角划分的经典dp。
对于一个多边形,只考虑它确定的一条边最终在哪个三角形里,这样每个需要考虑的多边形多可以用一段连续的边表示,即(O(n^2))的状态(O(n))转移。 -
notice
所有的点都在一个凸多边形内,以多边形的一个顶点为中心进行极角排序时,直接用叉积即可。
在这道题中,计算极角还需要找到扫描的起始位置,这就使得上述方法的优越性更加凸显。
solution
任何一个将羊群划分成奇数的对角线不可选,用极角排序可以预处理。
然后就是凸多边形上三角划分的经典dp。
对于一个多边形,只考虑它确定的一条边最终在哪个三角形里,这样每个需要考虑的多边形多可以用一段连续的边表示,即(O(n^2))的状态(O(n))转移。
notice
所有的点都在一个凸多边形内,以多边形的一个顶点为中心进行极角排序时,直接用叉积即可。
在这道题中,计算极角还需要找到扫描的起始位置,这就使得上述方法的优越性更加凸显。