HDU 1159 Common Subsequence 最大公共子序列
来源:互联网 发布:mac u盘启动盘制作 编辑:程序博客网 时间:2024/06/10 10:13
Common Subsequence
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submission(s): 21976 Accepted Submission(s): 9585
Problem Description
A subsequence of a given sequence is the given sequence with some elements (possible none) left out. Given a sequence X = <x1, x2, ..., xm> another sequence Z = <z1, z2, ..., zk> is a subsequence of X if there exists a strictly increasing sequence <i1, i2, ..., ik> of indices of X such that for all j = 1,2,...,k, xij = zj. For example, Z = <a, b, f, c> is a subsequence of X = <a, b, c, f, b, c> with index sequence <1, 2, 4, 6>. Given two sequences X and Y the problem is to find the length of the maximum-length common subsequence of X and Y.
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.
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.
Sample Input
abcfbc abfcabprogramming contest abcd mnp
Sample Output
420
/*HDU 1159 最长公共子序列 DP F[i][j]=F[i-1][j-1]+1;(a[i]==b[j])F[i][j]=max(F[i-1][j],F[i][j-1])(a[i]!=b[j]);*/#include<iostream>#include<cstring>int f[1001][1001];int main(){ char a[1001],b[1001]; int i,j,len1,len2; while(~scanf("%s %s",a,b)) { len1=strlen(a); len2=strlen(b); for(i=0;i<=len1;i++) { f[i][0]=0; } for(i=0;i<=len2;i++) { f[0][i]=0; } for(i=1;i<=len1;i++) { for(j=1;j<=len2;j++) { if(a[i-1]==b[j-1]) { f[i][j]=f[i-1][j-1]+1; } else { f[i][j]=f[i-1][j]>f[i][j-1]?f[i-1][j]:f[i][j-1]; } } } printf("%d\n",f[len1][len2]); } return 0;}
0 0
- HDU 1159 Common Subsequence 最大公共子序列
- HDU 1159 Common Subsequence 最大公共子序列
- HDU 1159 Common Subsequence 公共子序列
- hdoj 1159 Common Subsequence LCS最大公共子序列问题
- HDU Common Subsequence 最长公共子序列
- HDU Common Subsequence(最长公共子序列)
- HDU 1159 Common Subsequence(dp最大公共子串)
- hdu 1159 Common Subsequence 最大公共子串
- hdu 1159 Common Subsequence ***poj1458(最长公共子序列)
- hdu 1159 Common Subsequence 最长公共子序列
- hdu 1159 Common Subsequence(DP最长公共子序列)
- HDU 1159 Common Subsequence 最长公共子序列
- HDU 1159 Common Subsequence--最长公共子序列
- hdu 1159 Common Subsequence (最长公共子序列)
- Common Subsequence 最长公共子序列 hdu 1159
- hdu 1159 Common Subsequence(LCS最长公共子序列)
- hdu 1159 Common Subsequence(最长公共子序列)
- hdu 1159 Common Subsequence(动态规划:最长公共子序列)
- HDU 1003 Max Sum 最大连续上升和
- Android的ScrollView中添加自定义View
- HDU 1824 Let's go home(2-SAT)
- 企业数通知识系列之四--DHCP v6介绍
- 深圳—驾考
- HDU 1159 Common Subsequence 最大公共子序列
- linux tr命令
- url中携带中文的部分情况分析
- 计算房贷 公积金贷款 自由还款 程序
- php 常见常用语法函数
- 颜厍焕投闪瘴仔擞汹寻期徊狈酒献
- Hibernate学习笔记(3)Hibernate映射文件之set key one-to-many
- log4j和web.xml配置webAppRootKey 的问题
- 痔凰坏垢哨澈既尚习仆诨逞律古遗