Se puede mostrar que algunos enteros positivos tienen una propiedad llamada divisibilidad en cadena. Para que un número sea divisible en cadena por n , debe cumplir tres requisitos:
Cada dígito divide el número formado por los n dígitos que le siguen.
Por ejemplo, el número 7143 es la cadena-divisible por 2 porque 7 divisiones 14 y 1 divide 43. Es no cadena-divisible por 3 porque 7 no divide 143.
Cada subsecuencia tomada en cuenta para la divisibilidad no debe tener ceros a la izquierda.
Por ejemplo, el número 14208 no es divisible en cadena por 2 porque 08 tiene un cero a la izquierda. Sin embargo, es divisible en cadena por 3, porque 208 no tiene un cero a la izquierda.
Todos los dígitos en el número deben ser únicos.
Por ejemplo, el número 14280 es divisible en cadena por 2, 3 y 4. Si mi explicación de la divisibilidad de la cadena no está clara, haga preguntas en los comentarios.
Entrada
La entrada al programa consiste en un solo entero n
, seguido de un espacio, luego un número que ha tenido ciertos dígitos reemplazados por guiones bajos. Por ejemplo, lo siguiente es una entrada posible:
3 6__2__4508
n será mayor que 1. El número nunca será completamente subrayado. No se garantiza que el primer dígito no sea un guión bajo. El primer dígito nunca será 0. n nunca será mayor o igual al número de dígitos en el número.
Salida
Genere el número, con los dígitos reemplazados por enteros de modo que el número resultante sea divisible en cadena por n . Si existe más de una forma de completar el número divisible en cadena, cualquiera puede usarse como salida. Si no hay números que puedan completarlo, salida no answer
. Por ejemplo, la salida de la entrada de ejemplo podría ser:
6132794508
Este es el código de golf, por lo que gana el código más corto.
n
es mayor o igual que el número de dígitos en ese número, ¿el número es divisible en cadena?