#include #include #include #include #include #include using namespace std; int main() { int n, m; string s, t; cin >> n >> m >> s >> t; vector> dp(n + 1, vector(m + 1)); for (int j = 0; j <= m; j++) { dp[0][j] = j; } for (int i = 1; i <= n; i++) { dp[i][0] = i; for (int j = 1; j <= m; j++) { dp[i][j] = min(min(dp[i][j - 1], dp[i - 1][j]) + 1, dp[i - 1][j - 1] + (s[i - 1] != t[j - 1])); } } cout << dp[n][m] << endl; return 0; }