随笔分类 -  最长上升/递减子序列

最长上升/递减子序列
最大递增和最大递减求法和方案计数比较异同分析
摘要:1 /*最大递增和最大递减的分析 2 两个其实是一个道理 3 只是维护和边界需要修改一点 4 在理解的过程中突然有个想法:那就是直接套用最大递增,只是把数列改为原来的反数列,然后边界取负无穷大,然后求 5 这个反数列的最大递增数列就可以了,事实证明,这是可行的 6 */ 7 8 /*最大递增子序列算法**/ 9 #include 10 using namespace std; 11 int find(int *a,int len,int n)//修改后的二分查找,若返回值为x,则a[x]>=n 12 { 13 int left=0,right=len,mi... 阅读全文

posted @ 2013-07-30 00:06 ok_boy 阅读(534) 评论(0) 推荐(0)

poj2533
摘要:1 /*解题思路请看给分类的最长递增子序列算法解析那篇文章*/ 2 #include 3 #include 4 int find(int *c,int len,int n) 5 { 6 int l=0,r=len; 7 while(ln) r=mid-1;12 else return mid;13 }14 return l;15 }16 int main()17 {18 int i,j,n;19 int a[1005], c[1005],len;20 while(scanf("%d",&n)!=EOF)21 {2... 阅读全文

posted @ 2013-07-29 22:02 ok_boy 阅读(151) 评论(0) 推荐(0)

最长上升子序列算法解析
摘要:1 LIS什么是最长递增子序列呢? 2 问题描述如下: 3 设L=是n个不同的实数的序列,L的递增子序列是这样一个子序列Lin=, 4 其中k1 16 using namespace std; 17 int main() 18 { 19 int i,j,n,a[100],b[100],max; 20 while(cin>>n) 21 { 22 for(i=0;i>a[i]; 24 b[0]=1;//初始化,以a[0]结尾的最长递增子序列长度为1 25 f... 阅读全文

posted @ 2013-07-29 21:51 ok_boy 阅读(419) 评论(0) 推荐(0)

导航