该文被密码保护。 阅读全文
摘要:
对于两个数串a,b,求他们的最长公共子序列 多说不易,还是直接上代码分析吧。 void dp(){ int i, j, k; for(i = 1;i<=n;i++)//循环枚举a[i],b[j] { for(j=1;j<=n;j++) { f[i][j]=f[i-1][j];//若匹配则进行如下操作 阅读全文
摘要:
方法一 暴力求解: 删去i,j,之间的一条边,再求i,j,之间的最短路; 不 断枚举删去的边与i,j,两点直到找到正确答案; 时间复杂度0(n^4) 方法二 Floyed求最小环 for(k=1;k<=n;++k) { for(i=1;i<k;++i)//设k为环中编号最大的点 for(j=i+1; 阅读全文