func(x,0,2) { if(x > 1) { func(x-1,0,2) } move(0,2) }
func(自分の値, 移動元の場所、移動先の場所、その他の場所)
やりたい動き
1個 (1, 0->2) 2個 func(2, 0, 2) (1, 0->1) (2, 0->2) (1, 1->2) 3個 func(2, 0, 1) (1, 0->2) (2, 0->1) (1, 2->1) func(3, 0, 2) (3, 0->2) func(2, 1, 2) (1, 1->0) (2, 1->2) (1, 0->2)
もし一番下ならゴールへ。そうでなければ、2をゴール以外に。
func(a, x, y, z) { if(x > 1) { func(a-1, x, z, y) } move(x,y) if(a != 1) { move(z, y); } }