Dado un número entero n ≥ 0, imprímalo en una notación de base-3 no posicional, usando dígitos 139ABCDE…
y un separador de 1 carácter. Cada dígito es una potencia consecutiva de 3 y los dígitos en el lado izquierdo del separador se niegan, por ejemplo, A931 | B → 81− (1 + 3 + 9 + 27) → 41 . Un dígito puede aparecer solo una vez.
Rigurosamente, deje que el valor de un dígito sea:
- su valor si el dígito es 1, 3 o 9
- 27 si el dígito es
A
- 3 veces el valor del dígito justo delante de él para
B
...Z
Su salida debe satisfacer la suma (valor de dígitos a la derecha de |
) - suma (valor de dígitos a la izquierda de |
) == entrada .
Ejemplos
input output
----------------
0 |
1 |1
7 3|91
730 |D1
9999 FEDC|GA9
Puede usar un carácter diferente que no sea espacio como separador. También se le permite no tener separador, en cuyo caso el dígito más grande comienza la secuencia positiva. No necesita manejar nada más grande que 2 32 −1 ( PMIGDCBA9|RQNLH3
).
Puede escribir un programa o función completa, y la entrada y la salida se pueden proporcionar en cualquiera de los canales habituales.
Este es el código de golf , así que cuanto más corta sea su respuesta, mejor.
|
y los positivos a la derecha.