지도 타일 식별

지도 타일 쿼드키를 줌 레벨과 x, y 좌표로 변환합니다.

쉬움2비트 연산문자열면접 대비아직 제출이 없습니다시간 제한1초메모리 제한256 MB

문제

빙 지도나 구글 지도 같은 지도 사이트는 지도를 타일이라고 부르는 작은 이미지 파일 여러 장으로 나누어 저장한다. 확대 수준이 가장 낮은 0단계는 지도 전체를 낮은 해상도로 담은 타일 한 장이다. 1단계는 타일 네 장으로 이루어지고, 각 타일은 지도의 4분의 1을 조금 더 자세히 담는다. 일반적으로 nn단계는 지도의 일부를 각각 담는 타일 4n4^n장으로 이루어진다.

타일을 식별하는 방법 하나는 쿼드키다. 쿼드키는 특정 확대 수준의 타일 하나를 유일하게 가리키는 숫자 문자열이다. 첫 번째 숫자는 타일이 지도 전체의 네 사분면 중 어디에 있는지 나타낸다. 0은 왼쪽 위, 1은 오른쪽 위, 2는 왼쪽 아래, 3은 오른쪽 아래다. 그다음 숫자부터는 같은 번호 규칙으로, 현재 사분면 안에서 타일이 어느 하위 사분면에 있는지 나타낸다. 쿼드키의 길이가 곧 그 타일의 확대 수준이다.

(a) 확대 수준 1부터 3까지의 쿼드키(b) 확대 수준 3의 좌표
그림 1: 두 표현 방식. 이미지는 MSDN에서 가져왔다.

타일을 식별하는 다른 방법은 확대 수준과 xx, yy 좌표를 함께 주는 것이다. nn단계에서 지도는 2n×2n2^n \times 2^n 타일 격자이고, xx는 왼쪽 끝을 0으로 세는 열 번호, yy는 위쪽 끝을 0으로 세는 행 번호다. 따라서 (0,0)(0, 0)은 왼쪽 위 타일이다. 타일의 쿼드키가 주어지면 그 타일의 확대 수준과 xx, yy 좌표를 출력한다.

입력

첫째 줄에 지도 타일의 쿼드키인 문자열 ss가 주어진다 (1s301 \le |s| \le 30).

ss는 숫자 0, 1, 2, 3으로만 이루어져 있다.

출력

한 줄에 정수 세 개를 공백 하나로 구분해 출력한다. 순서대로 타일의 확대 수준, xx 좌표, yy 좌표다.