(Inspirado por esta pergunta )
Objetivo
Sua tarefa é escrever um programa ou função para imprimir uma versão ASCII do logotipo Stack Overflow no STDOUT
\|/
(-)
(-)
(-)
(-)
Seu programa deve receber duas entradas, chamadas aqui de H e N. A altura da pilha "contêiner" (os parênteses) é determinada por H. O número de itens na pilha é determinado por N. Se N> H, o pilha "transbordará".
Entrada / Saída
H determinará a altura dos contêineres
Por exemplo:
H = 1:
( )
H = 2:
( )
( )
H = 3:
( )
( )
( )
H sempre será pelo menos 1
N determinará quantos itens estão na pilha. Os exemplos a seguir são todos H = 2:
N = 0
( )
( )
N = 1
( )
(-)
N = 2
(-)
(-)
N = 3
\
(-)
(-)
N = 4
\|
(-)
(-)
N = 5
\|/
(-)
(-)
N = 6
\|/
(-)-
(-)
N = 7
\|/
(-)-
(-)-
N nunca será maior que 2H+3
(Em outras palavras, a pilha nunca passará pelo chão).
Regras
- Sem brechas padrão.
- Seu programa não deve produzir erros.
- Todos os casos de teste devem passar.
- Você pode inserir H e N da maneira que desejar.
- Eu duvido seriamente que seu idioma tenha um embutido para isso.
- Cada linha pode opcionalmente ter um espaço extra no final. Uma linha em branco acima de uma pilha em que N <= H é opcional, assim como uma nova linha à direita.
- Isso é código-golfe , então o código mais curto em bytes vence!
Casos de teste
Além de todos os casos de teste H = 2 da seção Entrada / Saída, todos os seguintes casos de teste devem ser aprovados:
H = 1, N = 1
(-)
H = 1, N = 5
\|/
(-)-
H = 4, N = 7
\|/
(-)
(-)
(-)
(-)
H = 5, N = 0
( )
( )
( )
( )
( )
Classificação
Aqui está um snippet de pilha para gerar uma classificação regular e uma visão geral dos vencedores por idioma.
Para garantir que sua resposta seja exibida, inicie-a com um título, usando o seguinte modelo de remarcação:
# Language Name, N bytes
onde N
está o tamanho do seu envio. Se você melhorar sua pontuação, poderá manter as pontuações antigas no título, identificando-as. Por exemplo:
# Ruby, <s>104</s> <s>101</s> 96 bytes
Se você quiser incluir vários números no cabeçalho (por exemplo, porque sua pontuação é a soma de dois arquivos ou você deseja listar as penalidades do sinalizador de intérpretes separadamente), verifique se a pontuação real é o último número no cabeçalho:
# Perl, 43 + 2 (-p flag) = 45 bytes
Você também pode transformar o nome do idioma em um link que será exibido no snippet do placar de líderes:
# [><>](http://esolangs.org/wiki/Fish), 121 bytes