문제
시작값인 0 이상의 정수
- 현재 값을 2배로 만든다.
-
현재 값에 비트 단위 NOT(bitwise NOT)을 취한다.
현재 값의 이진수 표현은 불필요한 앞자리 0을 제거한 형태로 취하며,
연산 결과로 생긴 불필요한 앞자리 0도 모두 제거한다.
(필요한 앞자리 0은
0 의 표현에 있는 것 하나뿐이다.)
예를 들어 2배 연산을 하면
두 연산은 원하는 만큼, 원하는 순서로 사용할 수 있다.
예를 들어
변환을 완료하는 데 필요한 연산 횟수의 최솟값을 구하라. 만약 불가능하다면 불가능하다고 출력하라.
입력
입력의 첫 줄에는 테스트 케이스 수
출력
각 테스트 케이스마다 Case # 형식의 한 줄을 출력하라.
여기서 IMPOSSIBLE이다.
그렇지 않다면
예제
6
10001 111
1011 111
1010 1011
0 1
0 101
1101011 1101011
Case #1: 4
Case #2: 3
Case #3: 2
Case #4: 1
Case #5: IMPOSSIBLE
Case #6: 0