Interpretar rangos sueltos
ListSharp es un lenguaje de programación interpretado que tiene muchas características, una de esas características es un creador de rango basado en 1 índice que funciona así:
Defina un rango como (INT) TO (INT)
o solo (INT)
donde ambos o el int único pueden ir del valor mínimo al máximo int32
Entonces puede usar esos rangos para extraer elementos de una matriz sin temor a sobrepasar sus límites
por lo tanto:
1 TO 5
genera: {1,2,3,4,5}
3
genera: {3}
Los rangos se pueden sumar usando el AND
operador
1 TO 5 AND 3 TO 6
genera: {1,2,3,4,5,3,4,5,6}
recuerda que esto también funciona con números negativos
3 TO -3
genera: {3,2,1,0,-1,-2,-3}
El desafío es el siguiente:
Entrada
Una matriz de caracteres y la cláusula de rango previamente definida como una cadena
Salida
Los elementos en las ubicaciones del rango basadas en 1 índice (los índices no existentes / negativos se traducen en un carácter vacío)
Cómo ganar
Como un desafío de código de golf , se supone que debes crear el programa con el menor recuento de bytes para ganar
Se ha señalado que los caracteres vacíos no existen, por lo tanto, debe ignorarlos (solo los mostré aquí para que sea más fácil de entender, pero confundió a las personas)
Casos de prueba:
input array is:
{'H','e','l','l','o',' ','W','o','r','l','d'}
range clause:
"1 TO 3" => "Hel"
"5" => "o"
"-10 TO 10" => "Hello Worl"
"0 AND 2 AND 4" => "el"
"8 TO 3" => "oW oll"
"-300 AND 300" => ""
"1 TO 3 AND 3 TO 1" => "HelleH"
"-20 TO 0 AND 1 AND 4" => "Hl"
3 TO 3
una entrada y cuál es la salida esperada?
AND
ing rangos múltiples. Además, no respondió si podemos usar la indexación basada en cero, que es estándar en la mayoría de los idiomas.
"0 TO 2"
=>{'H', 'e', 'l'}
?