Tricolor Hanoi: the Gathering

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.