hdu 1159:Common Subsequence(动态规划)
Common Subsequence
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 18765 Accepted Submission(s): 7946
The program input is from a text file. Each data set in the file contains two strings representing the given sequences. The sequences are separated by any number of white spaces. The input data are correct. For each set of data the program prints on the standard output the length of the maximum-length common subsequence from the beginning of a separate line.
programming contest
abcd mnp
2
0
#include <iostream> using namespace std;
int dp[][];
int main()
{
//dp[i][j]代表着a取前i个字符和b取前j个字符时的最长公共子序列的大小
char a[],b[];
while(cin>>a>>b){
int i,j;
int al,bl;
for(i=;a[i]!='\0';i++); //计算a、b字符串长度
for(j=;b[j]!='\0';j++);
al=i;bl=j; for(i=;i<=al;i++) //dp[][]初始化
dp[i][]=;
for(i=;i<=bl;i++)
dp[][i]=; for(i=;i<=al;i++) //计算dp[][]
for(j=;j<=bl;j++){
if(a[i-]==b[j-])
dp[i][j]=dp[i-][j-]+;
else
dp[i][j] = dp[i-][j] > dp[i][j-] ? dp[i-][j] : dp[i][j-];
} cout<<dp[al][bl]<<endl;
}
return ;
}
#include <stdio.h>
#include <stdlib.h>
int dp[][];
int main()
{
char a[],b[];
while(scanf("%s%s",a,b)!=EOF){
int i,j;
int al,bl;
for(i=;a[i]!='\0';i++);
for(j=;b[j]!='\0';j++);
al=i;bl=j;
for(i=;i<=al;i++)
dp[i][]=;
for(j=;j<=bl;j++)
dp[][j]=;
for(i=;i<=al;i++)
for(j=;j<=bl;j++){
if(a[i-]==b[j-])
dp[i][j] = dp[i-][j-]+;
else
dp[i][j] = dp[i-][j] > dp[i][j-] ? dp[i-][j] : dp[i][j-];
}
printf("%d\n",dp[al][bl]);
}
return ;
}
Freecode : www.cnblogs.com/yym2013
hdu 1159:Common Subsequence(动态规划)的更多相关文章
- HDU 1159 Common Subsequence 动态规划
2017-08-06 15:41:04 writer:pprp 刚开始学dp,集训的讲的很难,但是还是得自己看,从简单到难,慢慢来(如果哪里有错误欢迎各位大佬指正) 题意如下: 给两个字符串,找到其中 ...
- HDU 1159 Common Subsequence 最长公共子序列
HDU 1159 Common Subsequence 最长公共子序列 题意 给你两个字符串,求出这两个字符串的最长公共子序列,这里的子序列不一定是连续的,只要满足前后关系就可以. 解题思路 这个当然 ...
- HDU 1159 Common Subsequence
HDU 1159 题目大意:给定两个字符串,求他们的最长公共子序列的长度 解题思路:设字符串 a = "a0,a1,a2,a3...am-1"(长度为m), b = "b ...
- HDU 1159 Common Subsequence 公共子序列 DP 水题重温
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...
- hdu 1159 Common Subsequence(最长公共子序列)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...
- hdu 1159 Common Subsequence(最长公共子序列 DP)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...
- HDU 1159 Common Subsequence(裸LCS)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...
- HDU 1159 Common Subsequence (动态规划、最长公共子序列)
Common Subsequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- HDU 1159.Common Subsequence【动态规划DP】
Problem Description A subsequence of a given sequence is the given sequence with some elements (poss ...
随机推荐
- 锋利的jQuery-3--.css()获取和设置元素的数字属性
$('p').css({"fontSize": "30px", "backgroundColor": "#666"}); ...
- axel
Linux下多线程下载工具 - Axel 2011年10月8日 上午 | 作者:VPS侦探 Axel 是 Linux 下一个不错的HTTP/FTP高速下载工具.支持多线程下载.断点续传,且可以从多个地 ...
- varnish4.0简介
Varnish 4.0 简介 Varnish 是一款开源的HTTP加速器和反向代理服务器,它的主要特点有: (1)是基于内存缓存,重启后数据将消失.(2)利用虚拟内存方式,io性能好.(3)支持设置0 ...
- 基于.NET的大型Web站点StackOverflow架构分析(转)
Stack Overflow网址:http://stackoverflow.com/ 当前访问量:每月9500PV(每天300多万PV) 当前Alexa排名:149 所用.NET技术:C#.Visua ...
- WEB移动应用框架构想(转载)
iUI.jQTouch.WPTouch.PhoneGap.XUI.iWebkit.Rhodes.gwt-mobile…当我们已经开始惊 叹 web移动应用充斥着各种各样框架与类库的时候,其实各大web ...
- Linux的一个问题ircbot进程
首先该问题目前还不清楚希望知道的人可以回复我mail fengtaotao2012x@163.com 今天执行一次常规服务器安全抽查的时候发现一台web服务器的一个奇怪的进程 而且更厉害的是cpu使用 ...
- sqlite 跨数据库查询
try { $dbh = new PDO($dbrootemp, null, null); $dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_ ...
- 教程Xcode 4下编译发布与提交App到AppStore
地址:http://www.cocoachina.com/bbs/simple/?t55825.html 教程Xcode 4下编译发布与提交App到AppStore 先说一下这个是我在网上看到的一个帖 ...
- 白手起家搭建django app
$django-admin.py startproject web2 $cd web2/ $python manage.py startapp blog $vim web2/settings.py 注 ...
- [codeforces 293]A. Weird Game
[codeforces 293]A. Weird Game 试题描述 Yaroslav, Andrey and Roman can play cubes for hours and hours. Bu ...