此题首先想到的是用DP多次求长非递增子串,然后把找出来的最长串从数组里面删除,继续查找,直到找完为止。
但是这样找到得解未必是最优解,因为可能出现多个长度相等得最长非递增字串。默认的是删除第一串。这样得到的解就不一定是最优的了。
那么后来baidu后发现只要找到最长非递减字串就可以达到目的。
应该求最长 不降 子序列。这样的长度才是 最少需要的 套数,因为这个序列中的任何两个导弹都不能共用一个拦截系统 ,而且其余的导弹 都能和这个最长序列中的某个导弹分为同一组。
本文介绍了一种算法,用于计算防御导弹袭击所需的最小数量的导弹拦截系统。通过寻找最长非递减子序列来确定最少的系统数量,确保每个系统能有效拦截特定序列的导弹。
此题首先想到的是用DP多次求长非递增子串,然后把找出来的最长串从数组里面删除,继续查找,直到找完为止。
但是这样找到得解未必是最优解,因为可能出现多个长度相等得最长非递增字串。默认的是删除第一串。这样得到的解就不一定是最优的了。
那么后来baidu后发现只要找到最长非递减字串就可以达到目的。

被折叠的 条评论
为什么被折叠?