MOG Round #7Ended |
Qué es lo que se obtiene cuando se multiplica $6$ por $9$? Pues la respuesta es $42$, claro esto es si la base que usamos para realizar el cálculo es $13$. Dado un entero $B \ge 2$, el sistema numérico en base $B$ es una manera de escribir enteros usando solamente dígitos entre $0$ y $B - 1$, incluyendo a estos.
Algunas ecuaciones son falsas o verdaderas dependiendo de la base en que son consideradas. Por ejemplo, la ecuación $2+2=4$ es verdadera para $B \ge 5$ (para $B=4$ no porque el dígito $4$ no pertenece a la base $4$), por otro lado $2+2=5$ nunca es verdadero. Por lo que su tarea es escribir una programa que permita saber cuándo una ecuación es verdadera y cuando falsa y en qué base es verdadera.
Cada línea de la entrada es un caso de prueba, cada caso de prueba es de la forma $\texttt{EXPR=EXPR}$, donde $\texttt{EXPR}$ es una expresión aritmética de a lo sumo $17$ caracteres. Todas las expresiones son válidas y contienen solamente las operaciones $\texttt{*}$ y $\texttt{+}$ y los dígitos del $0$ al $9$. La entrada termina cuando la línea es solamente $\texttt{=}$.
Por cada caso de prueba se debe de imprimir en una línea la base para la cual la ecuación es verdadera. Si la ecuación es verdadera a partir de una base se imprime $\texttt{B+}$, donde $B$ es la primera base en la que es verdadera, si la ecuación es solo válida para una secuencia de bases solamente se debe de imprimir esta secuencia ordenada de menor a mayor separadas por un espacio. Si la ecuación no es verdadera para ninguna base se imprime $\texttt{*}$.