이진 트리 공 떨어뜨리기
면접 대비시간 제한1초메모리 제한128 MB
좌우로 바뀌는 스위치를 따라 n번째 공이 높이 h인 트리를 내려가며 닿는 잎 번호를 구합니다.
문제
높이가 인 완전 이진 트리가 있습니다 (그림 참고).

각 간선은 열린 상태이거나 닫힌 상태입니다. 처음에는 모든 왼쪽 간선이 열려 있습니다. 뿌리(root)에서 시작하여 공 개를 하나씩 떨어뜨립니다. 각 공은 항상 열린 간선을 따라 내려가며, 지나간 직후에는 그 간선을 닫고 같은 정점의 반대쪽 간선을 엽니다. 즉 왼쪽 간선이 열려 있었다면 왼쪽을 닫고 오른쪽을 열며, 오른쪽 간선이 열려 있었다면 오른쪽을 닫고 왼쪽을 엽니다.
번째 공이 어느 잎(leaf) 정점에 도달하는지 구하세요. 맨 아래 정점들은 왼쪽부터 오른쪽으로 부터 까지 번호가 매겨져 있습니다.
입력
첫째 줄에 두 정수 , 가 주어집니다 (, ). 각각 떨어뜨리는 공의 개수와 이진 트리의 높이를 뜻합니다.
출력
번째 공이 도달하는 정점의 번호를 정수 하나로 출력합니다.
힌트
높이가 인 트리에서는 공들이 차례대로 번호 인 정점에 떨어집니다. 따라서 4번째 공은 번 정점에 도달합니다. 이면 트리에는 정점이 하나(번)뿐이므로 모든 공이 번 정점에 떨어집니다.