#include using namespace std; long long M = 1e9 + 7; int d[20000][2000], n, m, ans; string s, t, s_new, t_new; int fit (char a, char b) { if (a == '*') return 0; if (b == '*') return 0; if (a == b) return 0; return 1; } int main () { cin >> s >> t; for (int i = 0; i < s.length (); i++) { if ('0' <= s[i] && s[i] <= '9') { ans++; for (int j = 0; j + '0' < i; j++) s_new += '*'; } else s_new += s[i]; } for (int i = 0; i < t.length (); i++) { if ('0' <= t[i] && t[i] <= '9') { ans++; for (int j = 0; j + '0' < i; j++) t_new += '*'; } else t_new += t[i]; } t = t_new; s = s_new; n = s.length (); m = t.length (); d[0][0] = 0; for (int i = 1; i < n; i++) { d[i][0] = d[i-1][0] + 1; } for (int j = 1; j < m; j++) { d[0][j] = d[0][j-1] + 1; } for (int i = 1; i < n; i++) for (int j = 1; j < m; j++) { d[i][j] = min (d[i-1][j], d[i][j-1]); if (fit (s[i-1], t[j-1])) d[i][j] = min (d[i][j], d[i-1][j-1]); } cout << ans + d[n][m]; }