#include <bits/stdc++.h>
#pragma GCC optimize("O3,unroll-loops")
#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#define ll long long
using namespace std;
const int N = 5e5;
int n , m , k , PX;
void init()
{
ios_base::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
#define TASK "Sheep"
if(fopen(TASK".INP" , "r"))
{
freopen(TASK".INP" , "r" , stdin);
freopen(TASK".OUT" , "w" , stdout);
}
}
void process()
{
int res = 1;
if(n > m) swap(n , m);
while(m - m/2 > k)
{
k += n;
n += n;
res ++;
}
cout << res << '\n';
}
void read()
{
string a , b;
cin >> a >> b;
vector < vector < int > > dp(a.size() + 1 , vector < int > (b.size() + 1));
for(int i = 1 ; i <= a.size() ; i ++)
for(int j = 1 ; j <= b.size() ; j ++)
if(a[i - 1] == b[j - 1]) dp[i][j] = dp[i - 1][j - 1] + 1;
else dp[i][j] = max(dp[i][j - 1] , dp[i - 1][j]);
k = dp[a.size()][b.size()];
n = a.size(); m = b.size();
}
int main()
{
init();
int test_case = 1;
//cin >> test_case;
while(test_case --)
{
read();
process();
}
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNwcmFnbWEgR0NDIG9wdGltaXplKCJPMyx1bnJvbGwtbG9vcHMiKQojcHJhZ21hIEdDQyB0YXJnZXQoImF2eDIsYm1pLGJtaTIsbHpjbnQscG9wY250IikKI2RlZmluZSBsbCBsb25nIGxvbmcKCgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY29uc3QgaW50IE4gPSA1ZTU7CgppbnQgbiAsIG0gLCBrICwgUFg7CgoKdm9pZCBpbml0KCkKewogICAgaW9zX2Jhc2U6OnN5bmNfd2l0aF9zdGRpbygwKTsKICAgIGNpbi50aWUoMCk7CiAgICBjb3V0LnRpZSgwKTsKICAgICNkZWZpbmUgVEFTSyAiU2hlZXAiCiAgICBpZihmb3BlbihUQVNLIi5JTlAiICwgInIiKSkKICAgIHsKICAgICAgICBmcmVvcGVuKFRBU0siLklOUCIgLCAiciIgLCBzdGRpbik7CiAgICAgICAgZnJlb3BlbihUQVNLIi5PVVQiICwgInciICwgc3Rkb3V0KTsKICAgIH0KfQoKdm9pZCBwcm9jZXNzKCkKewogICAgaW50IHJlcyA9IDE7CiAgICBpZihuID4gbSkgc3dhcChuICwgbSk7CiAgICB3aGlsZShtIC0gbS8yID4gaykKICAgIHsKICAgICAgICBrICs9IG47CiAgICAgICAgbiArPSBuOwogICAgICAgIHJlcyArKzsKICAgIH0KICAgIGNvdXQgPDwgcmVzIDw8ICdcbic7Cn0KCnZvaWQgcmVhZCgpCnsKICAgIHN0cmluZyBhICwgYjsKICAgIGNpbiA+PiBhID4+IGI7CiAgICB2ZWN0b3IgPCB2ZWN0b3IgPCBpbnQgPiA+IGRwKGEuc2l6ZSgpICsgMSAsIHZlY3RvciA8IGludCA+IChiLnNpemUoKSArIDEpKTsKICAgIGZvcihpbnQgaSA9IDEgOyBpIDw9IGEuc2l6ZSgpIDsgaSArKykKICAgICAgICBmb3IoaW50IGogPSAxIDsgaiA8PSBiLnNpemUoKSA7IGogKyspCiAgICAgICAgICAgIGlmKGFbaSAtIDFdID09IGJbaiAtIDFdKSBkcFtpXVtqXSA9IGRwW2kgLSAxXVtqIC0gMV0gKyAxOwogICAgICAgICAgICBlbHNlIGRwW2ldW2pdID0gbWF4KGRwW2ldW2ogLSAxXSAsIGRwW2kgLSAxXVtqXSk7CiAgICBrID0gZHBbYS5zaXplKCldW2Iuc2l6ZSgpXTsKICAgIG4gPSBhLnNpemUoKTsgbSA9IGIuc2l6ZSgpOwp9CgppbnQgbWFpbigpCnsKICAgIGluaXQoKTsKICAgIGludCB0ZXN0X2Nhc2UgPSAxOwogICAgLy9jaW4gPj4gdGVzdF9jYXNlOwogICAgd2hpbGUodGVzdF9jYXNlIC0tKQogICAgewogICAgICAgIHJlYWQoKTsKICAgICAgICBwcm9jZXNzKCk7CiAgICB9CiAgICByZXR1cm4gMDsKfQo=