Agora é a hora de escrever a segunda função necessária para o problema
de Hanoi Tricolor. gather()
constroi uma pilha
intercalada a partir de pilhas "split". Esta função recebe quatro
argumentos, o último sendo a vara destino onde a pilha intercalada
deve ser montada. Como você pode ver nos exemplos, as cores devem
estar na mesma ordem para cada trio de discos.
Esta função na verdade usa o move3()
que você escreveu
agora a pouco. Simplesmente copie-e-cole seu código e reuse ele. Se
estiver perdido, favor olhe o exercício Hanoi Intercalada. Obter 3
pilhas em 3 varas é muito similar a obter 2 pilhas em 4 varas. Você
pode encontrar este exercício aqui.