HDU_1257 最少拦截系统(DP)

这题其实就是求最长上升子序列,可是今天丢人丢大了,前几天刚做个这道题,今天比赛直接把代码贴上了,

晚上学长让我讲讲怎么用DP做的。一看就傻眼了,我自己心里还想这题怎么能这么做呢!

讨论完题目回头一想还确实是这么回事。唉,悲剧啊~~~~

可以看看这组数

11

389 207 155 300 299 170 158 65 299 180 40


它的最长上升序列怎么取?肯定不能在某个元素所在的递减子序列里边取两个元素。所以,

从每个下降子序列里边取一个元素构成它的最长上升子序列。这个序了的最长上升子序列就是155,170,299

所以,最长上升子序列的元素个数就是题目要求的下降子序列的个数。最长上升子序列的求法这里就不赘述了。

详见:http://www.cnblogs.com/vongang/archive/2011/08/03/2126582.html

你可能感兴趣的:(HDU)