La Trifuerza es un artefacto ficticio en La leyenda de Zelda , hecha de tres triángulos equiláteros de aspecto idéntico que representan poder, sabiduría y coraje. Varios juegos de la saga incluyen una animación cuando las tres partes finalmente se unen.
El propósito de este desafío es dibujar un solo cuadro 2D de una animación tan simplificada, con un ancho dado para los triángulos y un espacio entre las partes.
Entrada
La entrada consta de dos enteros: un ancho y un valor de espaciado .
Salida
El marco debe dibujarse de acuerdo con las siguientes especificaciones:
/\
/ \____________ this part is horizontally centered
/ \
/______\
\___ s empty lines
/
/\ /\
/ \ / \______ w+1 backslashes
/ \ / \
/______\ /______\
\_______ 2w underscores
|__|
\_____________ 2s spaces
En el ejemplo anterior, tenemos y .
Más ejemplos
, :
/\
/__\
/\ /\
/__\/__\
s = 0 , :
/\
/ \
/____\
/\ /\
/ \ / \
/____\/____\
s = 3 , :
/\
/ \
/ \
/______\
/\ /\
/ \ / \
/ \ / \
/______\ /______\
s = 1 , :
/\
/ \
/ \
/ \
/________\
/\ /\
/ \ / \
/ \ / \
/ \ / \
/________\ /________\
Reglas
- Los espacios finales en cada línea son opcionales.
- No se permiten espacios iniciales adicionales en cada línea.
- Puede generar una nueva línea principal adicional y / o una línea nueva adicional adicional.
- Este es el código de golf .
Python 2 ,
127124bytesPruébalo en línea!
fuente
Lienzo ,
201916 bytesPruébalo aquí!
Explicación:
nota: al hacer esto, solucioné un error en el código. Sin esa solución, esto sería 18 bytes .
fuente
R ,
225,224,214,211, 208 bytesPruébalo en línea!
fuente
if(F)0
es aceptable seguro y ahorra un byte. O incluso mejorrm()
para 3 bytes.q()
en mi primer comentario no es válida según este metaPascal (FPC) ,
296264 bytesPruébalo en línea!
fuente
Python 2 ,
256248240228199195 bytesUn programa más largo, pero un enfoque ligeramente diferente:
Pruébalo en línea!
ahorró muchos bytes gracias a ignorar el espacio en blanco al final e incorporar algunos trucos de @ovs
guardados aún más al definir una variable antes
fuente
Ruby , 126 bytes
Pruébalo en línea!
fuente
Retina 0.8.2 , 141 bytes
Pruébalo en línea! Nota: Algunos espacios en blanco finales en la salida. Explicación:
Convierte las entradas en espacios. (La segunda línea termina con un espacio).
Crea los lados de los dos triángulos inferiores con el espacio apropiado.
Completa la base de los triángulos.
Duplica los triángulos con el espacio vertical apropiado.
Convierte los triángulos superiores en un solo triángulo centrado.
fuente
C (gcc),
404389 bytesPruébalo en línea!
-14 bytes de Rodolvertice
-1 byte arreglando una disminución de la variable de bucle
tachado
404es casi todavía 404Sin golf:
fuente
#define p putchar
?p(x);
lugar dep(x)
, para (+26, -6) = +20 bytes. El punto y coma se incluye cuando la macro se expande.Jalea , 51 bytes
Pruébalo en línea!
fuente