Dada una entrada de una lista de sectores de una cadena, genera la cadena original.
Cada segmento se dará como una lista de longitud 2, que contiene la posición de inicio del segmento (un entero ≥0) y el segmento en sí. Si su idioma no admite matrices de tipos arbitrarios, también puede tomar esto como una estructura o similar, o simplemente una cadena que consiste en el número, un espacio y luego el segmento.
El orden de los dos elementos de cada segmento depende de usted. Además, si elige usar la representación de cortes como una matriz de longitud 2, puede tomar la entrada como una matriz bidimensional o una matriz plana única. Finalmente, la posición que representa el número entero puede estar indexada a cero o indexada a una (todos los ejemplos aquí están indexados a cero).
La entrada siempre será suficiente para determinar la cadena completa hasta la posición más alta dada. Es decir, no habrá "agujeros" o "brechas". Por lo tanto, la salida no debe contener caracteres finales o iniciales adicionales (excepto la nueva línea final opcional típica). La entrada siempre será coherente y ningún segmento entrará en conflicto entre sí.
Como se trata de code-golf , ganará el código más corto en bytes.
Casos de prueba:
In Out
-----------------------------------------------------------
[[2, "CG"], [0, "PP"], [1, "PC"]] | PPCG
[[0, "foobarbaz"]] | foobarbaz
[[0, "foobar"], [6, "baz"]] | foobarbaz
[[2, "ob"], [5, "rba"], [0, "fooba"], [8, "z"]] | foobarbaz
[[0, "fo"], [0, "fooba"], [0, "foobarbaz"]] | foobarbaz