Introdução
Em geometria, a curva de Peano é o primeiro exemplo de uma curva de preenchimento de espaço a ser descoberta por Giuseppe Peano em 1890. A curva de Peano é uma função contínua e subjetiva do intervalo da unidade ao quadrado da unidade, mas não é injetiva. Peano foi motivado por um resultado anterior de Georg Cantor de que esses dois sets têm a mesma cardinalidade. Devido a este exemplo, alguns autores usam a frase "curva Peano" para se referir de maneira mais geral a qualquer curva de preenchimento de espaço.
Desafio
O programa pega uma entrada que é um número inteiro n
e gera um desenho representando a n
iteração da curva Peano, começando pelas laterais 2 mostradas na parte mais à esquerda desta imagem:
Entrada
Um número inteiro que n
fornece o número de iteração da curva Peano. Entrada adicional opcional é descrita na seção de bônus.
Resultado
Um desenho da n
iteração da curva Peano. O desenho pode ser arte ASCII ou desenho "real", o que for mais fácil ou mais curto.
Regras
- A entrada e a saída podem ser fornecidas em qualquer formato conveniente (escolha o formato mais apropriado para o seu idioma / solução).
- Não há necessidade de lidar com valores negativos ou entrada inválida
- Um programa completo ou uma função são aceitáveis.
- Se possível, inclua um link para um ambiente de teste on-line para que outras pessoas possam experimentar seu código!
- As brechas padrão são proibidas.
- Isso é código-golfe, portanto todas as regras usuais de golfe se aplicam e o código mais curto (em bytes) vence.
Bónus
Como não deve ser um passeio no parque (pelo menos na maioria dos idiomas que consigo imaginar), pontos de bônus são concedidos pelo seguinte:
- -100 bytes se o seu código gerar um gif da construção das curvas Peano até
n
. - -100 bytes se o seu código desenhar uma curva de preenchimento de espaço para qualquer forma retangular (a curva Peano funciona apenas para quadrados, obviamente). Você pode assumir que a entrada assume o formato
n l w
onden
tem o mesmo significado de antes (o número da iteração), mas ondel
ew
se torna o comprimento e a largura do retângulo no qual desenhar a curva. Sel == w
, isso se torna a curva Peano normal.
Pontuações negativas são permitidas (mas são possíveis ...).
Editar
Inclua a saída do seu programa na solução para n == 3 (l == w == 1)
.
n
usado se l
e tambémw
são entradas ??????????? E seria a curva de Peano ser um caso especial - não é a curva única espacial compacto, por isso alguns algoritmos pode ter que specialcase-lo