uva10405-最长公共子序列
生活随笔
收集整理的這篇文章主要介紹了
uva10405-最长公共子序列
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
題目鏈接 http://acm.hust.edu.cn/vjudge/problem/19201
?
解題思路
LCS
?
代碼
#include<stdio.h> #include<string.h> #define MAX_LEN 1005 char str[MAX_LEN], re[MAX_LEN]; int dp[MAX_LEN]; int main() {str[0] = re[0] = '0'; while(gets(str+1) && gets(re+1)) {memset(dp, 0, sizeof(dp));int n = strlen(str) - 1;int m = strlen(re) - 1;int x;for(int i=1; i<=n; i++) {x = dp[0];for(int j=1; j<=m; j++) {if(str[i] == re[j]) { int y = dp[j]; dp[j] = x + 1; x = y; }else { x = dp[j]; dp[j] = dp[j]>dp[j-1]?dp[j]:dp[j-1]; }}}printf("%d\n", dp[m]);}return 0; }?
轉載于:https://www.cnblogs.com/ZengWangli/p/5815071.html
總結
以上是生活随笔為你收集整理的uva10405-最长公共子序列的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Oracle之不可见索引
- 下一篇: 【网络收集】order by 自定义排序