解题报告-论对“匹配”的新理解
解题报告-论对“匹配”的新理解
本题属于是一个新思维的开发方式,可以认为是思维上的 \(\texttt{Trick}\),可以在以后做题的时候起到一个告诫警示的作用。
二分图匹配,就是我们最常遇到的匹配。而在遇到其他匹配问题的时候,如果二分图匹配的复杂度不足以通过,那么一定有一些其他的规律和额外的技巧来通过这道题。
这道题就是一个示例。晃了一眼,下面还有一道几乎一样的匹配题。
题目描述:给定 \(n\) 个区间和 \(m\) 个点,每个区间只能和在其区间内的一个点匹配,求最大匹配。
第一眼,这是一个二分图匹配,然后看到 \(n,m\le 10^5\) 直接老实了。
我到这里就完全没思路了,看了题解的结论才把中间的思维过程勉强补齐:
他为什么出的是一个序列,而不是普通的点?这里体现一个重要思想:不是所有题都要建出所有边的。(这在 \(O(n^2)\) 条边的图中的最小生成树尤有体现。)
二分图的匹配用了一些贪心的思想,只不过是反向贪心,没了一个换一个就是了。那么这样的匹配是不是也能用贪心的思想呢?
贪心:满足包含某个点的区间有很多,但是真的是__每一个__都要去遍历吗?__贪心得到__我们要尽量选包含其它点尽量少的,尽量不干扰其它点。所以把点从小到大排序后,尽量在所有满足条件的区间中选左端点最靠左的。而为什么二分图不能这样做?因为二分图不具有以上属性,连个贪心的方向都没有。
以上示例告诫我们:板子之外就只剩板子的思想了,高分暴力就是这样诞生的。序列上的匹配——以及其他奇奇怪怪的 \(O(n^2)\) 状物——都需要转变,都需要找出新的性质。只套板子,不思考题目为什么不按照板子的模式出,是没有高分的。