/*Page 59 3-11 齿轮啮合 */</span>
#include <iostream>
using namespace std;
int main()
{
char Up[100], Down[100];
while (scanf("%s%s", Up, Down) != EOF)
{
int Length1 = 0, Length2 = 0; //不同移动方向产生的长度
int memory = 0; //移动时,记忆上次的位置
int n, m;
n = strlen(Up);
m = strlen(Down);
int i =0,j = 0;
while (i < n &&j < m){
if (Up[i] + Down[j] - 96 <= 3)
{
i++; j++;
}
else {
memory++;
i = 0;
j = memory;
}
}
Length1 = m + n - i;
while (i < m &&j < n){
if (Up[j] + Down[i] - 96 <= 3)
{
i++; j++;
}
else {
memory++;
i = 0;
j = memory;
}
}
Length2 = m + n - i;
cout << (Length1 < Length2 ? Length1 : Length2);
}
return 0;
}