Há um resultado combinatório clássico de que o número de maneiras de ladrilhar uma 2*n
faixa por 1*2
dominós é o número n- ésimo de Fibonacci. Seu objetivo é imprimir todas as inclinações para um determinado item n
, desenhadas com traços e linhas verticais como essas 8 inclinações para n=5
:
|————
|————
——|——
——|——
|||——
|||——
————|
————|
||——|
||——|
|——||
|——||
——|||
——|||
|||||
|||||
Você deve fornecer um programa ou função nomeada que tome n
como entrada e imprima a saída necessária. Menos bytes ganha.
Entrada
Um número n
entre 1
e 10
inclusive via STDIN ou entrada de função.
Resultado
Imprima todas as inclinações de dominó possíveis da 2*n
tira, desenhadas horizontalmente. As inclinações podem estar em qualquer ordem, mas cada uma deve aparecer exatamente uma vez. Eles devem ser separados por uma linha em branco.
Um dominó vertical é feito de duas barras verticais ( |
) e um dominó horizontal é feito de dois traços ( —
). Você pode usar hífens ( -
) no lugar dos traços para permanecer no ASCII.
Você pode fazer qualquer coisa com espaço em branco, desde que a saída impressa pareça a mesma.
——
e |
por comprimento como Dennis, não Length- n
cordas de —
e |
filtrados por —
aparecer em pares. E para o último, eu esperaria que fosse através de expressões regulares ou operações de string na string produzida, como s.split('——
) `, não por uma abordagem aritmética como a sua.