자리의 이진수로 표현된 음이 아닌 정수 가 주어진다. 는 정확히 자리로 표현되므로, 제일 앞자리가 일 수도 있다.
예를 들어, 의 값이 십진수로 이고 인 경우, 를 자리 이진수로 표현하면 이 된다.
이 수에 아래 두 가지 연산 중 하나를 골라서 수행하는 것을 번 이상 할 수 있다.
여기서, 는 를 번 곱한 것을 의미한다. 예를 들어, 이고, 이다.
두 연산을 원하는 순서로 진행하여 를 으로 만드는 것이 목표이다. 이때, 필요한 최소 연산의 횟수를 구하는 프로그램을 작성하시오.
첫 줄에 의 이진수 표현의 자릿수 가 주어진다. ()
두 번째 줄에 자리의 이진수로 표현된 수 가 주어진다.
첫 줄에 두 연산을 원하는 순서로 번 이상 수행하여 를 으로 만들 때 필요한 최소 연산의 수를 출력한다.
8 01011101
6
8 01001100
6
10 0011111101
5
예제 1에서, 첫 번째 연산을 번 수행하면 는 자리 이진수로 이 된다. 이후 두 번째 연산을 번 수행하면 는 이 된다. 이 경우가 최소 횟수의 연산을 수행하는 방법이다.
예제 2에서, 두 번째 연산을 번 수행하는 것이 최소 횟수의 연산을 수행하는 방법이다.
예제 3에서, 첫 번째 연산을 번 수행하고 두 번째 연산을 번 수행하여 를 으로 만드는 것이 최소 횟수의 연산을 수행하는 방법이다.
입력 케이스들은 다음과 같은 종류로 구별되며, 한 종류의 케이스를 다 맞혀야 그 종류에 배정된 점수를 받을 수 있다.
종류 1: 15점
종류 2: 32점
종류 3: 53점
추가적인 제한 조건이 없음.