Enteros ABA: los números ondulantes

En este desafío, debes determinar si un número dado es ondulante. Un número n es ondulante cuando se cumplen todas las siguientes condiciones:

  • n tiene al menos tres dígitos.
  • n tiene exactamente dos dígitos diferentes.
  • Los dos dígitos de n se alternan sin formar grupos repetidos.

Si pensamos en el primer dígito de un número ondulante como "A" y en el segundo dígito como "B", observamos una secuencia de la forma "ABA" que puede repetirse infinitamente y termina con "A" o con "B", pero sin grupos de "AA" o "BB".

Dado un entero positivo n, implementa una función que devuelva true si n es un número ondulante, o false si no lo es.

Ejemplos

is_undulating(121) ➞ true
# A = 1, B = 2
# The sequence ABA is valid

is_undulating(373737) ➞ true
# A = 3, B = 7
# The sequence ABABABAB is valid

is_undulating(12) ➞ false
# Less than three digits

is_undulating(12122) ➞ false
# The sequence ABABB is not valid

is_undulating(85856) ➞ false
# More than two different digits

Notas

N/A