为防止广告,目前nocow只有登录用户能够创建新页面。如要创建页面请先登录/注册(新用户需要等待1个小时才能正常使用该功能)。
最长公共不下降子序列
来自NOCOW
大家先看一下代码:
ans=0; for(i=1;i<=l1;i++) { max=0; for(j=1;j<=l2;j++) if(b[j]<a[i]) { if(f[j]>max) max=f[j]; } else if(b[j]==a[i]) { f[j]=max+1; if(ans<f[j]) ans=f[j]; } }
以a序列为阶段,f[j]是b序列前j个元素与a序列可以组成的最长公共不下降子序列长度,f[j]随阶段而改变(递增). max表示这一阶段最长公共不下降子序列长度,ans是最终结果.