Troca de copos

Published by persolut 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

CupSwapping(["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

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

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

CupSwapping(["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.