Un árbol H es una estructura de árbol fractal que comienza con una línea. En cada iteración, se agregan ramas T a todos los puntos finales. En este desafío, debe crear una representación ASCII de cada segundo nivel de árbol H.
El primer nivel simplemente contiene tres caracteres menos guiones:
---
Los siguientes niveles se construyen recursivamente:
- Cree una matriz de copias 2x2 del nivel anterior, separadas por tres espacios o líneas.
- Conecte los centros de las copias con líneas de arte ASCII en forma de H. Utilice
-para líneas horizontales,|líneas verticales y+siempre que las líneas se encuentren entre sí.
Segundo nivel
-+- -+-
| |
+-----+
| |
-+- -+-
Tercer nivel
-+- -+- -+- -+-
| | | |
+--+--+ +--+--+
| | | | | |
-+- | -+- -+- | -+-
| |
+-----------+
| |
-+- | -+- -+- | -+-
| | | | | |
+--+--+ +--+--+
| | | |
-+- -+- -+- -+-
Reglas
- La entrada es un número entero que representa el nivel del árbol H del arte ASCII como se describió anteriormente ( no el nivel real del árbol H), ya sea cero o uno indexado.
- La salida es flexible. Por ejemplo, puede imprimir el resultado o devolver una cadena separada por una nueva línea, una lista de cadenas para cada línea o una matriz 2D de caracteres.
- Debe utilizar
-,|,+y los caracteres de espacio. - Se permiten espacios finales y hasta tres líneas de espacios en blanco finales.
Este es el código de golf. La respuesta más corta en bytes gana.

Respuestas:
Lienzo ,
2019 bytesPruébalo aquí!
Explicación:
fuente
Carbón de leña , 22 bytes
Pruébalo en línea! El enlace es a la versión detallada del código. 0 indexado. Explicación:
Imprima los tres
-s iniciales , dejando el cursor en el medio.Repita el número de veces dado.
Repita dos veces para cada uno
H. Cada ciclo crea un poco más grandeHdel ciclo anterior, pero solo queremosHs alternativos .Rotar la figura.
Dibuja la mitad de la siguiente línea.
Reflexiona para completar el paso.
El resultado en cada iteración es el siguiente:
fuente
Hve un quinto nivel , una rápida mirada alejadaPython 2 , 227 bytes
Pruébalo en línea!
fuente
Perl 6 , 118 bytes
Pruébalo en línea!
0 indexado. Devuelve una matriz 2D de caracteres. La idea básica es que la expresión
genera el patrón
Explicación
fuente