Tricolor Hanoi: the Gathering

Agora é a hora de escrever a segunda função necessária para o problema de Hanoi Tricolor. gather() constrói uma pilha intercalada a partir de pilhas "split". Esta função recebe quatro argumentos, o último a ser a vara de destino onde a pilha intercalada deve ser montada. Como 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 escreveu agora a pouco. Simplesmente copie-e-cole o seu código e reuse-o. 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. Pode encontrar este exercício aqui.