本文共 573 字,大约阅读时间需要 1 分钟。
emmm,这道题有说要连续输入吗???
理解下题意,还是最长公共子序列的问题。#include#include #include #include using namespace std;char s[1010], t[1010];int dp[1010][1010];int main(){ int ls, lt; while (cin >> ls >> s >> lt >> t) { for (int i = 1; i <= ls; i++) for (int j = 1; j <= lt; j++) { if (s[i - 1] == t[j - 1]) dp[i][j] = dp[i - 1][j - 1] + 1; else dp[i][j] = max(dp[i - 1][j], dp[i][j - 1]); } cout << lt - dp[ls][lt] << endl; } system("pause");}
转载地址:http://ikyci.baihongyu.com/