La tarea
En este desafío, su tarea es dibujar una representación de arte ASCII de varias pilas de cajas de altura creciente. Se le da como entrada el número de pilas, que es un número entero positivo. La primera pila contiene una caja de tamaño 2x2
. La segunda pila contiene 2 cajas de tamaño 3x3
. En general, la k
pila th contiene k
cajas de tamaño (k+1)x(k+1)
.
Los bordes de cada cuadro se dibujan con los caracteres -|+
, y su interior consiste en espacios en blanco. Las cajas adyacentes comparten sus bordes, y las esquinas siempre deben dibujarse +
, incluso cuando forman parte de un borde de otra caja.
Ejemplos
Salida para 1
:
++
++
Salida para 2
:
+-+
| |
+-+
++ |
++-+
Salida para 3
:
+--+
| |
| |
+--+
| |
+-+ |
| +--+
+-+ |
++ | |
++-+--+
Salida para 5
:
+----+
| |
| |
| |
| |
+----+
| |
| |
| |
+---+ |
| +----+
| | |
| | |
+---+ |
| | |
| +----+
+--+ | |
| +---+ |
| | | |
+--+ | |
| | +----+
+-+ +---+ |
| +--+ | |
+-+ | | |
++ | | | |
++-+--+---+----+
Reglas y puntuación
La entrada se puede recibir de STDIN, como argumento de línea de comando o como argumento de función. La salida debe ir a STDOUT o equivalente más cercano. Se permite cualquier cantidad finita de espacios en blanco finales, al igual que las líneas nuevas anteriores y posteriores, pero no puede haber espacios anteriores adicionales.
Este es el código de golf, por lo que gana el conteo de bytes más bajo. Las lagunas estándar no están permitidas.
Integer.MaxValue
como entrada.
Integer.MaxValue
o es equivalente.
n
yn-1
son relativamente primos. Dos ventajas nunca se superpondrán.