用递归算吧 如果不考虑时间空间代价的话
具体思路:
第一题:
如果已知一个序列中最长的不下降子序列长度,那么这个序列前面添加一个数之后的最长的不下降子序列长度可能加1,这与原来的最长不下降子序列中最大的两个数有关。
具体是,如果加的数比子序列最大值大,长度加1。否则不变。
递归过程需要记录最长不下降子序列的前两个元素的值。
用c写的代码如下,我试了试结果是对的
相关下载链接:
//download.csdn.net/download/lkzc99/2144441?utm_source=bbsseo