这题比较经典,题意大致上就是给你n个点和m个区间,每个区间有一个正权值,让你选出一些区间,使得每个点都不会被覆盖超过k次,且选出的区间权值和最大。
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------
lyd:
首先把区间端点离散化,设原来的数值i离散化后的标号是c[i]。这样离散化之后,整个数轴被分成了一段段小区间。 1.建立S和T,从S到离散化后的第一个点连容量K,费用0的边。离散化后的最后一个点到T连容量K、费用0的边。 2.离散化后的相邻点之间(从i到i+1)连容量为K,费用为0的边。 3.输入的区间从离散化后的左端点到右端点连容量1、费用W的边。
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------
为什么要这样呢?为什么这样可行呢?
Poj3680 Intervals
时间: 2024-11-09 15:19:37