Inspirado por el C- director #define.
Desafío
Dada una frase con un alias y una matriz con cada texto de alias. Salida de la frase inicial reemplazando cada alias con su texto respectivo.
Un alias se define por una nitidez #seguida de su índice en la matriz (el índice puede comenzar en cero o uno). Alias puede contener otro alias dentro de su texto, y debe resolverlos todos (tal vez de forma recursiva). Puede suponer que el alias nunca se ejecutará en un bucle infinito. El alias no tendrá ceros a la izquierda ( #02no es un alias en el índice 2, es un alias en el índice 0seguido del texto 2).
Puede suponer que la matriz no pasará 20 elementos de longitud.
Puedes escribir un programa, o una función o incluso un #define- sería bueno :)
También puede usar otro método de entrada que se ajuste mejor a su idioma.
Ejemplo
phrase: "#0 & #3"
array: [
"Programming #1",
"Puzzles",
"Code",
"#2 Golf"
]
output: "Programming Puzzles & Code Golf"
Paso a paso:
0> "#0 & #3"
1> "Programming #1 & #2 Golf"
2> "Programming Puzzles & Code Golf"
Como se trata de código de golf , ¡la respuesta más corta en bytes gana!
Otras muestras
phrase: "#0!"
array: [
"We are #1",
"#2",
"#3",
"#4 !",
"graduating"
]
output: "We are graduating !!"
phrase: "##0#1#0#21#3#4"
array: [
"a",
"m",
"z",
"n",
"g"
]
output: "#amaz1ng"
phrase: "##1#23"
array: [
"WEIRD",
"0 C",
"AS"
]
output: "WEIRD CAS3"
phrase: "#1#7#6y#4#7#10s#7b#11#0#0#11r#7#0h#6#5#2#5#9#4."
array: [
"t",
"#12#3",
"#11ga#3",
"#0#10v#11",
"#0h#10#8g",
"#7#8",
"a#8",
" ",
"n",
"o",
"i",
"e",
"P#9s#10"
]
output: "Positive anything is better than negative nothing."
Los ejemplos anteriores utilizan Array con índice que comienza en cero.
#01
#0debería aparecer? ¿O es#01válido pero no es un alias (es decir, simplemente se deja como está)?