Linear Towers of Hanoi

Esta é uma variação clássica das Torres de Hanoi onde alguns movimentos são proibidos. Especificamente, os disco não podem ser movidos diretamente da vara mais à esquerda para a vara mais a direita. A vara do meio deve ser envolvida em cada movimento.

Apesar desta complexidade, o problema permanece o mesmo: você tem que mover toda a pilha de discos da vara numa extremidade para a vara na outra extremidade. Você só pode mover um disco por vez, e um disco não pode ficar sobre outro menor.

Como na versão clássica, é muito fácil produzir uma solução recursiva, e você é totalmente capaz de "devise" esta solução se você pensar com atenção nela.

O algortimo recursivo padrão para as torres de Hanoi clássicas é de complexidade 2^n-1 enquanto que o algoritmo recursivo padrão para esta variação é de complexidade 3^n-1.
A algoritmo recursivo padrão para as torres de Hanoi clássicas envolve duas chamadas recursivas sanduichando um movimento do disco maior, O algoritmo recursivo padrão para Hanoi Linear envolve três chamadas recursivas sanduichando dois movimentos do mesmo disco.