Haga un programa que tome una longitud y una lista de intervalos y genere una regla de esa longitud con marcas más largas para cada intervalo utilizando los caracteres de dibujo lineal. ┌ ┬ ┐ │ ╵
- La primera fila de la salida debe comenzar con el tic para 0 con
┌
y terminar con un tic para la longitud con┐
, con un┬
uso para cada carácter intermedio. Habrá un total delength
+ 1 caracteres de dibujo lineal en esta primera fila. - Una marca debe alargarse verticalmente en incrementos de medio carácter usando
╵
y│
función de los intervalos de entrada. - Los intervalos se enumeran de menor a mayor, en relación con el intervalo anterior. Elaborar:
- El primer intervalo indica cuántas marcas base (la primera fila, un carácter por marca) hay en el segundo intervalo más pequeño (el intervalo más pequeño es 1). Por ejemplo, [3] alargará cada tercer tic en medio carácter.
- El segundo intervalo y los posteriores son en términos del siguiente intervalo más pequeño. Por ejemplo, [3, 5] alargará cada tick base 15 por un carácter completo y [3, 5, 2] alargará cada tick base 30 por un carácter y medio.
- Un subintervalo de 1 es válido y efectivamente significa que las últimas líneas de intervalo se alargan con un carácter completo en lugar de un medio carácter.
- Los ejemplos de casos de prueba deberían ayudar a aclarar cómo funciona esto.
Ejemplos / Casos de prueba
3, []:
┌┬┬┐
9, [3]:
┌┬┬┬┬┬┬┬┬┐
╵ ╵ ╵ ╵
30, [5, 2]:
┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
│ ╵ │ ╵ │ ╵ │
32, [4, 2, 2, 2]:
┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
│ ╵ │ ╵ │ ╵ │ ╵ │
│ ╵ │
48, [5, 3, 2]
┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
│ ╵ ╵ │ ╵ ╵ │ ╵ ╵ │
╵ ╵
24, [7, 3]
┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
│ ╵ ╵ │
17, [3, 2, 1]
┌┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┬┐
│ ╵ │ ╵ │ ╵
╵ ╵ ╵
1, [23, 19, 13, 11, 7, 5, 3, 2, 1]
┌┐
│
│
│
│
╵
Otras reglas / notas
- La entrada y salida pueden usar cualquier formato conveniente
- La regla no tiene que terminar con una marca importante
- La lista de intervalos puede estar vacía.
- El tic cero siempre está dentro de todos los intervalos.
- Puede suponer que la longitud de la regla y los intervalos siempre serán enteros positivos menores que 120
- El espacio en blanco final está bien, pero el espacio en blanco inicial no lo está.
- Se permite cualquier espacio fijo de ancho único como un carácter de espaciado si, por alguna razón, desea utilizar algo distinto de los espacios ASCII.
¡Feliz golf!