Números bigenerados

Se dice que y es un generador de x si x es igual a la suma de y los dígitos de y. Por ejemplo, 1996 y 2014 son generadores de 2021 ya que

Un número bigenerado es un número que tiene exactamente 2 generadores. Por ejemplo,

  • 2021 es un número bigenerados y sus generadores son 1996 y 2014
  • 20 no es bigenerador porque no tiene ningún generador
  • 21 no es bigenerador porque tiene sólo un generador (el 15).
  • 101 es el menor número bigenerado ysus generadores son 91 y 100.

Definir las funciones

tales que

  • (esBigenerado x) se verifica si x es bigenerado. Por ejemplo,

  • bigenerados es la lista de los números bigenerados. Por ejemplo,

Comprobar con QuickCheck que la lista de los números bigenerados es infinita; es decir, para cualquier número positivo n existe un y mayor que x que es bigenerado.

Soluciones

Nuevas soluciones

  • En los comentarios se pueden escribir nuevas soluciones.
  • El código se debe escribir entre una línea con <pre lang="haskell"> y otra con </pre>