Desafío
El invierno se acerca rápidamente con muchos lugares que reciben las primeras capas de nieve para la temporada 15/16, entonces, ¿por qué no rompemos las máquinas de nieve y codificamos algo de nieve?
Dado un número entero a ntravés de STDIN, genera una representación ASCII del copo de nieve de Beta (como se describe a continuación) a nivel n.
Copo de nieve de Beta
El copo de nieve comienza en el nivel 0 con una sola x:
x
Luego, en cada esquina agrega una de estas formas:
x
xx
Agrega la forma anterior a una esquina superior derecha. Para una esquina inferior derecha, gírela 90 ° en sentido horario, para la esquina inferior izquierda, 180 ° en sentido horario y para la esquina superior izquierda, 270 ° en sentido horario.
Si haces eso, obtienes la siguiente forma:
x x
xx xx
x
xx xx
x x
Tome nota de la orientación de las formas. Continuando agregamos más de las formas a cada esquina, usando las reglas de orientación descritas anteriormente, al diagrama para obtener el nivel 2:
x x x
xxxxxxx
xx x x xx
xxx xxx
xx x xx
xxx xxx
xx x x xx
xxxxxxx
x x x
Tenga en cuenta que las formas solo se agregan a xs con dos o más lados expuestos (lo que se conoce como una esquina arriba).
Las formas en L pueden superponerse para valores nsuperiores a 1. Por ejemplo:
Si el nivel 0 es:
x x
Luego debe haber superposiciones en el nivel 1 (indicado con un o, no incluya el oen su salida):
x o x
xxxoxxx
x x
xxxoxxx
x o x
Su tarea es generar esta representación ASCII del copo de nieve de Beta.
Prima
Habrá una bonificación de 50 repeticiones para el programa más corto que, cuando nes negativo, genera el copo de nieve (a nivel n*-1) como una imagen o gráficamente en la pantalla.
Puede tener programas separados para la recompensa y la tarea principal.
Victorioso
El programa más corto en bytes gana.
2 or more exposed sidesregla? Suponiendo centro está 0,0a continuación 1,1, 1,-1, -1,-1, -1,1todos tienen 2 lados expuestos (los lados de cara a los otros 4 puntos). ¿No deberían ser más de 3 lados abiertos para evitar el relleno? O, alternativamente, solo se expande si tiene 0 o 1 vecinos (cardinal).