题目大意
给定N个带权的开区间,第i个区间覆盖(ai, bi),权为wi。现在要你挑出一些区间使得总权值最大,并且满足实轴上任意一个点被覆盖不超过K次。(1 <= K <= N <= 200, 1 <= ai < bi <= 100,000, 1 <= wi <= 100,000)
最小费用流,区间有两百个,可以用左边的点发出一条到右边的点的边,容量为1,费用为负的权值。然后从左往右将依次将相邻的两个点都连起来,权值为0,容量为k,也就是说,如果选了这个区间,就会从费用为负数的边流过去,否则,就是从这个费用为0的边流过去。然后建立一个虚拟源点与最左边的点相连,权值为0,容量为k,这样就保证了重叠数之多为k,因为增广路上所经过的区间必定是不重合的,而流量只有k,所以满足题意。