2013年10月16日

算法复习之::LCS最长公共子序列

摘要: 算法思想:dp[i][j]记录到A[i],B[j]的位置是Lcs的最大长度, 转移方程:I:dp[i][j]=max(dp[i-1][j],dp[i][j]) (i>1) II:dp[i][j]=max(dp[i][j-1],dp[i][j]) (j>1) III:dp[i][j]=max(dp[i][j],dp[i-1][j-1]+1) (A[i]==A[j],i>1,j>1) 处理完后,再从dp[A.length][B.length]处开始回溯找出最大子序列。代码: #include #include #include #include #in... 阅读全文

posted @ 2013-10-16 15:44 uestc小田 阅读(138) 评论(0) 推荐(0) 编辑

纪念一下::AstronomicalRecordsEasy

摘要: #include #include #include #include using namespace std;class AstronomicalRecordsEasy{ public: int minimalPlanets(vector A, vector B) { int a=A.size(),b=B.size(),ans=a+b,dp[60][60]; for(int i=0;i0) dp[k][l]=max(dp[k][l],dp[k-1][l]); if(... 阅读全文

posted @ 2013-10-16 02:24 uestc小田 阅读(130) 评论(0) 推荐(0) 编辑

导航