수형도의 공통 꼭짓점 최댓값

힙 번호를 붙인 완전 이진 트리에서 두 정점의 가장 깊은 공통 조상 k를 구해 10k를 출력한다.

쉬움3트리수학비트 연산면접 대비아직 제출이 없습니다시간 제한2초메모리 제한512 MB

문제

꼭짓점이 1023개인 수형도가 있다. 뿌리는 꼭짓점 1이고, 꼭짓점 vv의 두 자식은 꼭짓점 2v2v와 꼭짓점 2v+12v+1이다. 이 규칙으로 1부터 1023까지의 자연수가 각 꼭짓점에 하나씩 대응한다. 번호가 512 이상 1023 이하인 꼭짓점에는 자식이 없다. 위에서 네 개 층만 그리면 다음과 같다.

                1
        2               3
    4       5       6       7
  8   9   10  11  12  13  14  15

꼭짓점 1에서 꼭짓점 aa까지 가는 경로와 꼭짓점 1에서 꼭짓점 bb까지 가는 경로에 공통으로 들어 있는 꼭짓점의 번호 중 최댓값을 M(a,b)M(a, b)라 하자. 예를 들어 M(4,11)=2M(4, 11) = 2이고 M(7,12)=3M(7, 12) = 3이다.

두 자연수 AABB에 대해 M(A,B)=kM(A, B) = k라 할 때 10k10k의 값을 구하는 프로그램을 작성하시오.

입력

첫째 줄에 테스트 케이스의 수 TT (1T500001 \le T \le 50000)가 주어진다. 이어서 TT개의 테스트 케이스가 한 줄에 하나씩 주어진다. 각 줄에는 두 정수 AABB (1A,B10231 \le A, B \le 1023, ABA \ne B)가 공백 하나를 사이에 두고 주어진다.

출력

각 테스트 케이스마다 10k10k의 값을 한 줄에 하나씩 출력한다.