Torres de Hanoi cíclicas

Esta variação das torres de Hanoi é muito similar ao problema normal: recebe uma pilha de discos e três varas e não pode mover um disco maior sobre um menor. A diferença é que só pode mover discos no sentido horário: 0->1 ou 1->2 ou 2->0, mas nunca na outra direção.

Obviamente, os movimentos não são simétricos de forma alguma. Movimentos de A para B são agora muito diferentes de movimentos de B para A. Como resultado, precisa de duas funções recursivas a depender de estar a mover a pilha no sentido horário ou anti-horário.

Dito isto, a decomposição do problema é muito similar ao Hanoi clássico. A diferença é que cada função chama a outra, a constituir um bom exemplo de recursão mútua.