#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
int c[1000001]={0,};
for(int i=1;i<=1000000;i++){
if(3*i<1000001){
if(c[3*i]>c[i]+1||c[3*i]==0){
c[3*i]=c[i]+1;
}
}
if(2*i<1000001){
if(c[2*i]>c[i]+1||c[2*i]==0){
c[2*i]=c[i]+1;
}
}
if(1+i<1000001){
if(c[1+i]>c[i]+1||c[1+i]==0){
c[1+i]=c[i]+1;
}
}
}
return 0;
}
int min(int a, int b){
if(a>b){
return b;
}else{
return a;
}
}
int max(int a, int b){
if(b>a){
return b;
}else{
return a;
}
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCgoKaW50IG1haW4oKQp7CiAgICBpbnQgYTsKICAgIHNjYW5mKCIlZCIsJmEpOwoKICAgIGludCBjWzEwMDAwMDFdPXswLH07CgogICAgZm9yKGludCBpPTE7aTw9MTAwMDAwMDtpKyspewogICAgICAgIGlmKDMqaTwxMDAwMDAxKXsKICAgICAgICAgICAgaWYoY1szKmldPmNbaV0rMXx8Y1szKmldPT0wKXsKICAgICAgICAgICAgICAgIGNbMyppXT1jW2ldKzE7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKDIqaTwxMDAwMDAxKXsKICAgICAgICAgICAgaWYoY1syKmldPmNbaV0rMXx8Y1syKmldPT0wKXsKICAgICAgICAgICAgICAgIGNbMippXT1jW2ldKzE7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgICAgIGlmKDEraTwxMDAwMDAxKXsKICAgICAgICAgICAgaWYoY1sxK2ldPmNbaV0rMXx8Y1sxK2ldPT0wKXsKICAgICAgICAgICAgICAgIGNbMStpXT1jW2ldKzE7CiAgICAgICAgICAgIH0KICAgICAgICB9CgogICAgfQogICAgcHJpbnRmKCIlZCIsY1thXSk7CgoKCiAgICByZXR1cm4gMDsKfQoKCgoKCmludCBtaW4oaW50IGEsIGludCBiKXsKICAgIGlmKGE+Yil7CiAgICAgICAgcmV0dXJuIGI7CiAgICB9ZWxzZXsKICAgICAgICByZXR1cm4gYTsKICAgIH0KfQppbnQgbWF4KGludCBhLCBpbnQgYil7CiAgICBpZihiPmEpewogICAgICAgIHJldHVybiBiOwogICAgfWVsc2V7CiAgICAgICAgcmV0dXJuIGE7CiAgICB9Cn0K