Hide

Problem AE
Identifying Map Tiles

Map websites such as Bing Maps and Google Maps often store their maps as many different image files, called tiles. The lowest zoom level (level $0$) consists of a single tile with a low-detail image of the whole map, zoom level $1$ consists of four tiles each containing a slightly more detailed version of a quarter of the map, and in general zoom level $n$ contains $4^ n$ different tiles that each contain a part of the map.

One way of identifying a tile is by means of a quadkey. A quadkey is a string of digits uniquely identifying a tile at a certain zoom level. The first digit specifies in which of the four quadrants of the whole map the tile lies: 0 for the top-left quadrant, 1 for the top-right quadrant, 2 for the bottom-left quadrant and 3 for the bottom-right quadrant. The subsequent digits specify in which sub quadrant of the current quadrant the tile is. The quadkeys for zoom levels $1$ to $3$ are shown in Figure 1(a).

\includegraphics[width=0.85\textwidth ]{maptiles.jpg}
(a) Quadkeys for zoom levels $1$ to $3$
\includegraphics[width=0.90\textwidth ]{maptiles2.jpg}
(b) Coordinates for zoom level 3
Figure 1: Visualisation of the two representations. The images are taken from the MSDN.

Another way of identifying a tile is to give the zoom level and $x$ and $y$ coordinates, where $(0,0)$ is the left-top corner. The coordinates for the tiles of zoom level 3 are shown in Figure 1(b). Given the quadkey of a tile, output the zoom level and $x$ and $y$ coordinates of that tile.

Input

The input consists of:

  • one line with a string $s$ ($1\leq \text {length}(s) \leq 30$), the quadkey of the map tile.

The string $s$ consists of only the digits ‘0’, ‘1’, ‘2’ and ‘3’.

Output

Output three integers, the zoom level and the $x$ and $y$ coordinates of the tile.

Sample Input 1 Sample Output 1
3
1 1 1
Sample Input 2 Sample Output 2
130
3 6 2

Please log in to submit a solution to this problem

Log in