hdu 1159
来源:互联网 发布:linux rpm qa grep 编辑:程序博客网 时间:2024/05/18 23:27
主题思想: 最长公共子序列 LCS
此題是经典dp题之一。 1AC,,主要还是要自己考虑下。
对于字符串a,b
dp[i][j] 表示以字符串a中第i个字符,和b中第j个字符结尾,最长公共子序列的长度。
初始化dp为全0.
if(a[i]==b[j]) then dp[i][j]=dp[i-1][j-1]+1else dp[i][j]=max(dp[i][j-1],dp[i-1][j]
AC代码:
#include <iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>using namespace std;const int maxn=1024;int dp[maxn][maxn];int LCS(string a,string b){ memset(dp,0,sizeof(dp)); a=" "+a; b=" "+b; int n1=a.length(); int n2=b.length(); dp[0][0]=0; for(int i=1;i<n1;i++){ for(int j=1;j<n2;j++){ if(a[i]==b[j]){ dp[i][j]=dp[i-1][j-1]+1; }else{ dp[i][j]=max(dp[i][j-1],dp[i-1][j]); } } } return dp[n1-1][n2-1];}int main(){ string a,b; while(cin>>a>>b){ int ans=LCS(a,b); printf("%d\n",ans); } return 0;}
阅读全文
0 0
- hdu 1159
- hdu 1159
- hdu 1159
- HDU 1159
- hdu 1159
- HDU 1159
- HDU 1159
- hdu 1159
- HDU-1159
- hdu 1159
- hdu 1159 hdoj 1159
- hdu 1159 Common Subsequence
- HDU 1159 Common Subsequence
- hdu 1159 最有子结构
- HDU 1159 Common Subsequence
- hdu 1159 Common Subsequence
- HDU 1159 Common Subsequence
- HDU 1159 Common Subsequence
- iphone手机safari输入法不支持keyup事件解决方法
- 对SpringIOC和DI的个人理解
- php 获取今日、昨日、上周、本月的起始时间戳和结束时间
- jumpserver0.3.0部署
- kubernetes资源对象--Horizontal Pod Autoscaling(HPA)
- hdu 1159
- 内部类(成员、静态、方法)| java帮助文档 | 垃圾回收机制
- 全面了解ajax
- frameset框架,多用于后台
- 【干货】Html与CSS入门学习笔记1-3
- 阿里巴巴消息系统架构及变迁
- 数据结构入门--优先队列简单排序
- PHP程序员最常犯的11个MySQL错误
- Linux中IPsec的实现--(实例)