如题解中各位大佬所说,这道题可以转化为二分图匹配。每个中心点的求解相当于把其左、右侧的对应点删除后再做匹配。因此,可以先把整个二分图建出来用匈牙利算法匹配一次;对于每个中心点,删除其左、右侧的对应点,把这两个点原来匹配的点(如果存在)用匈牙利算法重新进行增广,得到删除条件下的最大匹配。复杂度 O(nm)O(nm)O(nm),优于朴素算法的 O(n2m)O(n^2m)O(n2m) 或 O(n1.5m)O(n^{1.5}m)O(n1.5m)。