Vamos a ver haciendo un análisis un poco más detallado del problema podemos estimar lo siguiente, la cantidad de información que debes almacenar es la que corresponde a una cadena de dígitos formada por la concatenación de los dígitos del primer número con los dígitos del segundo número. Lo mires por donde lo mires si aceptamos que el primer número tiene 3 dígitos y el segundo tiene 10 dígitos, necesitas almacenar 13 dígitos, en la forma que mejor te parezca, pero siempre son 13 dígitos en total.
Ahora bién ¿que cantidad de información, medida en bits, necesitas para almacenar un dígito? Traduce un número de 1 dígito a codigo binario y verás que necesitas al menos 4 bits ya que el 9 en código binario es 1001. Por lo tanto necesitas almacenar información correspondiente a 4 x 13 = 52 bits, lo mires por donde lo mires, aunque en función de los márgenes y condiciones que tengan que cumplir los números iniciales es posible en algunos casos reducir esa cantidad de información, por ejemplo, si no todos los dígitos son posibles, si alguno de los números es multiplo de otro etc, ¿podías ser un poco más concreto al respecto? ¿Podías explicar en que forma se generan los dos números iniciales?
Saludos, Jabato.