Troca de copos

Published by Werdna in

Há três copos sobre uma mesa, nas posições A, B e C. No início, há uma bola escondida sob o copo da posição B.

Imagem dos copos com a bola sob o copo do meio

No entanto, faço várias trocas nos copos, que são indicadas por duas letras. Por exemplo, se eu trocar os copos nas posições A e B, posso indicar isso como AB ou BA.

Crie uma função que retorne a letra da posição em que a bola está depois que eu terminar de trocar os copos. As trocas serão fornecidas como um array.

Exemplo resolvido

cup_swapping(["AB", "CA", "AB"]) ➞ "C"

# Ball begins at position B.
# Cups A and B swap, so the ball is at position A.
# Cups C and A swap, so the ball is at position C.
# Cups A and B swap, but the ball is at position C, so it doesn't move.

Exemplos

cup_swapping(["AB", "CA"]) ➞ "C"

cup_swapping(["AC", "CA", "CA", "AC"]) ➞ "B"

cup_swapping(["BA", "AC", "CA", "BC"]) ➞ "A"

Notas

  • Uma troca pode ser indicada de duas maneiras diferentes, já que ambas resultam no mesmo resultado.
  • Todas as trocas serão indicadas por letras maiúsculas e serão válidas.
  • Você não pode trocar um copo consigo mesmo.