HDU 1159
Description
Input
Output
Sample Input
abcfbc abfcab
programming contest
abcd mnp
Sample Output
4
2
0 题意:求最大公共子序列的长度 解题思路:
用d[i][j]表示公共子序列的长度。
如果x[i-1]==y[j-1]
d[i][j]=d[i-1][j-1]+1
否则
d[i][j]=max(d[i-1][j],d[i][j-1])
代码如下:
#include <stdio.h>
#include <string.h>
int max(int a,int b)
{
return a>b?a:b;
}
char x[],y[];
int d[][];
int main()
{
while(scanf("%s%s",&x,&y)!=EOF)
{
//memset(d,0,sizeof(d));
int lenx=strlen(x),leny=strlen(y);
for(int i=; i<=lenx; i++)
{
for(int j=; j<=leny; j++)
{
if(x[i-]==y[j-])
{
d[i][j]=d[i-][j-]+;
//printf("x[%d]=%c y[%d]=%c d[%d][%d]=%d %d\n",i-1,x[i-1],j-1,y[j-1],i-1,j-1,d[i-1][j-1],d[i][j]);
}
else
{
d[i][j]=max(d[i-][j],d[i][j-]);
// printf("x[%d]=%c y[%d]=%c d[%d][%d]=%d d[%d][%d]=%d %d\n",i-1,x[i-1],j-1,y[j-1],i-1,j,d[i-1][j],i,j-1,d[i][j-1],d[i][j]);
} }
}
printf("%d\n",d[lenx][leny]);
}
}
HDU 1159的更多相关文章
- HDU 1159 Common Subsequence
HDU 1159 题目大意:给定两个字符串,求他们的最长公共子序列的长度 解题思路:设字符串 a = "a0,a1,a2,a3...am-1"(长度为m), b = "b ...
- hdu 1159 Palindrome(回文串) 动态规划
题意:输入一个字符串,至少插入几个字符可以变成回文串(左右对称的字符串) 分析:f[x][y]代表x与y个字符间至少插入f[x][y]个字符可以变成回文串,可以利用动态规划的思想,求解 状态转化方程: ...
- HDU 1159 Common Subsequence 最长公共子序列
HDU 1159 Common Subsequence 最长公共子序列 题意 给你两个字符串,求出这两个字符串的最长公共子序列,这里的子序列不一定是连续的,只要满足前后关系就可以. 解题思路 这个当然 ...
- 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 题意: 求最长公共子序列. 题解: (LCS模板题) 表示状态: dp[i][j] = max ...
- HDU 1159 Common Subsequence【dp+最长公共子序列】
Common Subsequence Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Other ...
- 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 http://acm.hust.edu.cn/vjudge/contest/view.action ...
- HDU 1159 Common Subsequence(裸LCS)
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=1159 Common Subsequence Time Limit: 2000/1000 MS (Jav ...
随机推荐
- android一些基础知识
android应用基于JAVA, 支持SQL,由于底层是LINUX,所以支持C/C++ 目前有两种编程:基于ADT的JAVA编程,基于NDK的C编程 Android编程环境需要哪些:官方推荐用JDK+ ...
- 一个不错的java的配置文件的设置
package property; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStre ...
- python(1) -文件操作
很多时候我们需要对文件进行一些操作,比如读取并分析日志文件,写入日志文件等等.显然python也内置了对文件进行操作的函数. 读文件: >>> f = open('a.log','r ...
- SQL Server:替换文本中的回车和换行符
--替换回车符 update master_locationSET street_number = REPLACE(street_number, CHAR(13), '') --替换换行符 updat ...
- 【概率dp,难度3颗星】hdu-5001(2014鞍山网络赛)
给你一个连通的无向图,等概率随机选取一个起点,走d步,每一步等概率走到相邻的点.问走完d步之后,每个点没有被经过的概率. 推状态的关键当然就是对这个“从任意起点走完d步点node没被经过的概率”的理解 ...
- Spring AOP原理解析
原文链接请参见:http://blog.csdn.net/u010723709/article/details/47839307
- 转:linux的源码查看, c++语法 查看网站
http://linux.die.net/ http://www.cplusplus.com/
- PHP,单双引号的区别‘“”“”’
一.转义 单引号:只转义\'和\\,其他不转义 双引号:都转义 二.变量解析 单引号:无法解析变量(原样输出) 双引号:可以解析变量 三.速度 单引号:更快 双引号:要分析是否有变量,转义内容更多 结 ...
- Editplus中使用正则表达式压缩代码
快捷键ctrl+H打开查找与替换窗口,勾上使用正则表达式选项,查找项输入\t|^( )+,替换范围选当前文档,选择全部替换按钮,然后查找项在输入\n,再选择全部替换按钮. 大功告成!
- Android环境搭建的步骤
Android 环境搭建步骤 这里简单介绍一下学习Android之后如何搭建环境的问题 一. 在搭建环境之前,首先你要先下载Java JDK(根据系统位数选择下载是64位或32位的),Eclip ...