Dado como entrada un entero positivo n>=1
, genera las primeras n
filas del siguiente triángulo:
1
1 0 1
0 0 1 0 0
1 1 1 0 1 1 1
0 0 0 0 1 0 0 0 0
1 1 1 1 1 0 1 1 1 1 1
0 0 0 0 0 0 1 0 0 0 0 0 0
1 1 1 1 1 1 1 0 1 1 1 1 1 1 1
0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1
Las filas se alternan entre todos los ceros y todos, excepto que la columna central se voltea.
Casos de prueba
Entrada :
3
Salida :
1 1 0 1 0 0 1 0 0
Entrada :
10
Salida :
1 1 0 1 0 0 1 0 0 1 1 1 0 1 1 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 0 1 1 1 1 1 0 0 0 0 0 0 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 1 1 1 1 1 1 1 1 1
Su código debe funcionar para cualquiera n<100
. Este es el código de golf , por lo tanto, gana el código más corto en bytes.
¡Se permiten espacios finales / líneas nuevas y líneas nuevas iniciales!
Respuestas:
Jalea , 7 bytes
Pruébalo en línea!
-1 byte gracias a Erik the Outgolfer
Explicación
fuente
¶Ç
con elµ
de -1.Python 2 , 50 bytes
Pruébalo en línea!
Esto devuelve las filas como una lista de cadenas.
Python 2 ,
67 6563 bytes (formateado)Pruébalo en línea!
Esto genera un espacio final en cada línea.
fuente
Jalea , 8 bytes
Pruébalo en línea!
-2 gracias a HyperNeutrino .
fuente
¬^Ḃ
puede ser=Ḃ
porqueNOT (XOR (A B))
es soloIFF (A B)
editar, aparentemente jugué al golf más de lo que pensaba que tenía o_O lolPython 2 , 50 bytes
Pruébalo en línea!
Python 2 , 53 bytes
Pruébalo en línea!
Python 2 , 67 bytes
Pruébalo en línea!
fuente
Japt ,
129 bytes¡Pruébalo en línea!
Bastantetriste en comparación con Jelly, pero Japt no tiene nada parecido,Ṭ
así que debo conformarme con lo que tengo ...Explicación
fuente
Mathematica, 77 bytes
¡Ningún árbol lo ha reducido a 48 bytes!
Mathematica, 48 bytes
fuente
#&@@@NestList[CellularAutomaton@51,{{1},0},#-1]&
48 bytesPyth , 14 bytes
¡Gracias a @Jakube por guardar 2 bytes!
Pruébalo aquí!
Pyth , 15 bytes
Muchas gracias a @Jakube por -1 byte
Pruébalo aquí
Pyth , 16 bytes
Pruébalo aquí
fuente
]
en el primer código.ms_+Bm%d2d%hd2
R , 73 bytes
Gracias a Giuseppe! Buena atrapada.
Pruébalo en línea!
R , 78 bytes
Pruébalo en línea!
R , 82 bytes
Pruébalo en línea!
R , 110 bytes - salida a stdout
Pruébalo en línea!
R , 130 bytes: salida a un archivo
Pruébalo en línea!
Escribir en un archivo ya que no sé cómo encajarlo en la consola si
n==99
(vea el resultado aquí ).fuente
Pascal ,
181154 bytes27 bytes guardados gracias a @ThePirateBay
Pruébalo en línea!
Sin pelar
fuente
Retina , 25 bytes
Pruébalo en línea! Explicación: La primera etapa convierte la entrada en una cadena de ceros de esa longitud. La segunda etapa toma todos los prefijos de esa cadena (sin incluir la cadena en sí) y les asigna un 1 como prefijo. La tercera etapa alterna los bits en líneas alternas.
fuente
05AB1E ,
242118 bytesPruébalo en línea!
Editar: Bueno, es mi primer golf 05AB1E, así que no me sorprende que las cosas se puedan jugar al golf. Editar historial:
.∞
yû
), lo que facilita las cosas muchoÈ
yÉ
hacer ,2%
y2%_
mucho más cortoFN2%DN×Dr_sJIN>-úˆ}¯»
IF
->F
,)J
->J
baa
aaab
puede ser hecho por.À
(giratoria) , sino también porr
(invirtiendo) (más corto)IFN2%DN×D.À_s)JIN>-úˆ}¯»
fuente
Perl 5 , 58 + 1 (-n) = 59 bytes
Pruébalo en línea!
# Perl 5 , 59 + 1 (-n) = 60 bytesPruébalo en línea!
fuente
Mathematica, 90 bytes
fuente
SOGL V0.12 , 13 bytes
Pruébalo aquí!
fuente
Carbón , 18 bytes
Pruébalo en línea! El enlace es a la versión detallada del código. Explicación:
fuente
JavaScript,
140132 bytes (con el formato adecuado)Pruébalo en línea
fuente
A=Array
para guardar 8 bytes.A=Array;
que pueda iniciar la variableA
en la primera llamada de matriz (es decirfor(x of(A=Array)(n))
), que ahorra 1 byte, 2) Reemplace'\n'
con una nueva línea literal (use acentos graves), 3) No necesita paréntesis(b+1)%2
porque es equivalente ab+1&1
.JavaScript (ES6) ,
7473716864 bytes-7 bytes por @Neil
Pruébalo en línea!
Función recursiva simple que genera las líneas una por una. Salidas como conjunto de conjunto de números.
Salidas como cadena formateada:
JavaScript (ES6) ,
122119118 bytesPruébalo en línea!
fuente
(n%2+(i==n))%2
se puede simplificar a(n+(i==n))%2
.1&n^i==n
podría funcionar, pero no lo he probado.n--?...:[]
. (Y no necesita el;
código de golf.)2*n+1
podría sern-~n
, pero nunca puedo recordar con certeza.Haskell , 54 bytes
Comprensión directa de la lista:
Pruébalo en línea!
fuente
J, 32 bytes
Pruébalo en línea!Esta es una función anónima que devuelve una lista de valores en recuadro.
Me gusta imaginar que la definición de función explícita ahorra bytes en virtud de eliminar mayúsculas y demás, pero probablemente agrega unos pocos bytes en comparación con una respuesta tácita.
Explicación
fuente
05AB1E , 11 bytes
Pruébalo en línea!
Explicación
fuente
J , 17 bytes
Pruébalo en línea!
Emite una lista de matrices en caja.
Explicación
fuente
Java 8,
121111109101 bytesMi actual byte-score (101) también es una fila del triángulo binario. :)
Explicación:
Pruébalo aquí
fuente
GolfScript , 49 bytes
Pruébalo en línea!
fuente