UVA 10405-Longest Common Subsequence
生活随笔
收集整理的這篇文章主要介紹了
UVA 10405-Longest Common Subsequence
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
最長公共子序列,值得注意的是這道題不能用scanf讀字符串。
#include<stdio.h>#include<string.h>
#define MAXD 1005
char s1[MAXD], s2[MAXD];
int dp[MAXD][MAXD];
int max( int a, int b)
{
return a > b ? a : b;
}
void solve()
{
int len1 = strlen(s1 + 1);
int len2 = strlen(s2 + 1);
memset( dp, 0, sizeof dp);
for( int i = 1; i <= len1; i ++)
for( int j = 1; j <= len2; j ++)
{
if( s1[i] == s2[j])
dp[i][j] = dp[i - 1][j - 1] + 1;
else
dp[i][j] = max( dp[i - 1][j], dp[i][j - 1]);
}
printf( "%d\n", dp[len1][len2]);
}
int main()
{
while( gets(s1 + 1) != NULL)
{
gets( s2 + 1);
solve();
}
return 0;
}
?
轉載于:https://www.cnblogs.com/Yu2012/archive/2011/11/24/2262467.html
總結
以上是生活随笔為你收集整理的UVA 10405-Longest Common Subsequence的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 病毒的手工排除与分析(更新完毕)
- 下一篇: 北京环球影城一张票能玩几天