Dada uma entrada de dois números inteiros n e m , produza uma escada ASCII de comprimento n e tamanho m .
Esta é uma escada ASCII de comprimento 3 e tamanho 3:
o---o
| |
| |
| |
+---+
| |
| |
| |
+---+
| |
| |
| |
o---o
Esta é uma escada ASCII de comprimento 5 e tamanho 1:
o-o
| |
+-+
| |
+-+
| |
+-+
| |
+-+
| |
o-o
Esta é uma escada ASCII de comprimento 2 e tamanho 5:
o-----o
| |
| |
| |
| |
| |
+-----+
| |
| |
| |
| |
| |
o-----o
Para ser específico:
O comprimento ( n ) representa quantos quadrados a escada é composta.
O tamanho ( m ) representa a largura e a altura do interior - isto é, sem contar as "bordas" - em cada quadrado.
Cada quadrado é constituído pela área interna cheia de espaços, cercada por
-
s na parte superior e inferior,|
s na esquerda e direita e+
s nos quatro cantos.As bordas entre quadrados se fundem, portanto, duas linhas seguidas se
+--...--+
fundem em uma.Os cantos de toda a escada são substituídos pelo personagem
o
.Opcionalmente, você pode gerar uma nova linha à direita.
O comprimento da escada ( n ) será sempre ≥ 2 e o tamanho ( m ) será sempre ≥ 1.
A entrada pode ser tomada como uma cadeia de caracteres separada por espaço em branco / vírgula, uma matriz / lista / etc. Ou duas funções / linha de comando / etc. argumentos. Os argumentos podem ser tomados na ordem que for mais conveniente / mais golfista.
Como esse é o código-golfe , o código mais curto em bytes vence.
Dica: Os exemplos acima também podem ser usados como casos de teste.