Escriba un programa que tome como entrada una cadena que consiste en caracteres imprimibles (ASCII 20-7E) y un número entero n
en [2,16] y realiza la siguiente modificación a la cadena.
- Cada carácter en la cadena se convierte a su código ASCII (los ejemplos dados están en hexadecimal, aunque la base 10 también es aceptable).
- Los códigos ASCII se convierten en base
n
y se concatenan juntos. - La nueva cadena se divide en todos los demás caracteres. Si hay un número impar de caracteres, el último carácter se elimina por completo.
- Los códigos ASCII de impresión (en la base 16) se convierten nuevamente en sus caracteres, mientras que los códigos ASCII que no se imprimen se eliminan.
- La cadena resultante se imprime.
Caso de prueba
Entrada
Hello, World!
6
Pasos
Hello, World!
48 65 6C 6C 6F 2C 20 57 6F 72 6C 64 21
2002453003003031125222330331030024453
20 02 45 30 03 00 30 31 12 52 22 33 03 31 03 00 24 45
La salida de este programa es E001R"31$E
.
Este es el código de golf, por lo que se aplican reglas estándar. El código más corto en bytes gana.
7
, la cadena J
pasaría por los pasos J
-> 50
-> 101
-> 10
-> (no output)
, como lo haría la cadena K
o L
.
H
es ASCII 72 (decimal) o 48 (hexadecimal), pero lo que necesito es 200 (base 6). Toda la fila 2 en el ejemplo es inútil y confusa en mi opinión