Hanoi Tricolor: o Final

Estamos quase prontos para escrever o algoritmo tricolor. Precisamos apenas da função scatter(), bastante inspirada na primeira que escrevemos para o problema de Hanoi Separado. Assumindo que sua pilha intercalada esteja na vara do meio, espalhe os discos por todas as varas. Certifique-se de usar move3() uma quantidade par de vezes em cada nível recursivo para garantir que os discos de baixo estejam na ordem correta.

Como você pode ver, a situação inicial não é a esperada por scatter(). Primeiro você tem que aplicar gather() e move3() (duas vezes para colocar o trio do fundo na ordem correta). Estes poucos passos mais a nova função scatter() são o suficiente para resolver inteiramente o problema de Hanoi Tricolor.