Problem

8 /9


ハノイの塔

Problem

パズル「ハノイの塔」 1、2、3 の番号が付けられた 3 本のロッドで構成されます。異なる直径の n 個のディスクのピラミッドが、直径の小さい順にロッド 1 に置かれます。ディスクは一度に 1 つのロッドから別のロッドに移すことができますが、ディスクをより小さい直径のディスク上に置くことはできません。最小限の転送回数でピラミッド全体をロッド 1 からロッド 3 に転送する必要があります。
 
  
パズルを解くプログラムを作成します。指定された数のディスク n について、一連の順列を a b c の形式で出力します。シフトされたディスクの番号、b -このディスクが取り外されるロッドの番号、c -このディスクが置かれているロッドの番号。
 
たとえば、行 1 2 3 は、ディスク番号 1 をピン 2 からピン 3 に移動することを意味します。1 つのコマンドが 1 行に表示されます。ディスクには、直径が大きくなる順に 1 から n までの番号が付けられます。
 
入力
自然数 n (0 < n < 11) を入力します。
 
出力
プログラムは、指定された数のディスクからピラミッドを再配置する最小の (実行される操作の数の点で) 方法を表示する必要があります。

<頭> <本体>
# 入力 出力
1 2
1 1 2
2 1 3
1 2 3