##data structure
- Japanese Mahjong has 34 different kinds of tiles plus 3 read doras, 4 for each, 136 tiles in total. Therefore, for simpilicity, all different tiles are labled from 0 to 33 as below.
- Note that for each tile there are 4 same ones, in our algorithm, we use 0 to 135 to represent each tile. And they are easily convert back into 0 ~ 34 using folling code.