HDU 4106 Fruit Ninja

这个考费用流建图(时间跑到HDU目前的第四)

是poj3680的加强版

poj 3680 是区间对点的限制,而这道题,是点对区间的限制。如果选取取一个数,那么每个包含这个数且长度为 M的连续区间内可以选的数都要减少一个,对吧?转换模型!点变区间,区间变点!把区间离散化为 n - m + 1个部分,那么就有 n - m + 2 个点,left = max(1,i-m+1) ;right = min(i,tot-1)+1;分别是每个点对区间限制的左边界和右边界。


 也可以这样建图:在每个点的前后个新建一个点,可以把闭区间问题转化为开区间问题


 

 

posted on 2012-03-23 00:23  c语言源码  阅读(223)  评论(0编辑  收藏  举报

导航