Encontre o número único em uma lista

Retorne o inteiro cuja quantidade de ocorrências seja diferente da dos demais valores. Todos os outros valores aparecem a mesma quantidade de vezes. Se todos os valores fornecidos aparecerem com a mesma frequência, retorne qualquer valor do array.

Exemplos

findUniqueNumber([2, 2, 2, 3, 4, 4, 4]) // 3

findUniqueNumber([2]) // 2

findUniqueNumber([]) // nil

findUniqueNumber([7, 13, 3, 6, 5, 4, 4, 13, 5, 3, 6, 7, 6, 5, 3, 13, 4, 7, 13, 5, 7, 4, 3, 6, 8, 4, 3, 7, 5, 6, 13]) // 8

findUniqueNumber([1, 2, 3, 6, 5, 4, 4, 2, 5, 3, 6, 1, 6, 5, 3, 2, 4, 1, 2, 5, 1, 4, 3, 6, 101, 4, 3, 1, 5, 6, 2]) // 101

Notas

  • Não se esqueça de usar return para retornar o resultado.
  • Este desafio inclui duas verificações:
    1. Se a entrada estiver vazia, retorne nil (exemplo #3).
    2. Se o array tiver um único elemento, retorne esse elemento (exemplo #2).
  • A entrada sempre contém 1 ou 0 números únicos. Não há dois nem três+ números únicos.
  • Dica: tente usar um dicionário com a contagem de ocorrências.
  • Se você ficar sem saber como avançar ou sua solução estiver muito complicada, consulte a aba Recursos.