Desafío:
Dado un entero n
como entrada. Crea un diamante que sea 2 veces el número dado n
.
Entrada:
La entrada es entera n
y 2 <n ≤ 3000.
Salida:
Salida será una cadena y será en forma de un diamante que consiste +
en una línea de adición a la proyección de inicio n
utilizando+
Ejemplos:
D (3): +++ + +++ +++++ +++++ +++ + D (5): +++++ + +++ +++++ +++++++ +++++++++ +++++++++ +++++++ +++++ +++ + D (6): ++++++ + +++ +++++ +++++++ +++++++++ +++++++++++ +++++++++++ +++++++++ +++++++ +++++ +++ +
Criterios ganadores:
Este es el código de golf, por lo que gana el código más corto en bytes para cada lenguaje de programación.
n
en unario?+
como marca de conteo ?n
sea par?Respuestas:
brainfuck ,
151139 bytesPruébalo en línea!
Toma entrada vía unario, con
+
s como marcas de conteo ( permitidas por el póster ). Decidí reelaborar esto, ya que pensé que el viejo era un poco más largo de lo que podría ser (¡aunque este también lo es!).Versión anterior (151 bytes):
Pruébalo en línea!
Toma la entrada como la celda inicial. No se me ocurrió una manera de aprovechar la primera mitad para ayudar con la segunda, por lo que hay un ciclo para cada uno de ellos.
Cómo funciona:
Y solo por diversión:
Pruébalo en línea!
fuente
Lienzo , 9 bytes.
Pruébalo aquí!
Explicación (algunos caracteres han sido reemplazados para parecer monoespaciales):
fuente
Python 3 ,
959475 bytesPruébalo en línea!
Mi primer intento de jugar al golf, cualquier sugerencia de mejora es bienvenida.
EDITAR: guardado 1 byte gracias a Kevin Cruijssen
EDITAR: eliminó los malentendidos sobre el recuento de bytes
EDITAR: ahorró muchos más bytes gracias a Jo King y al usuario202729
fuente
print'\n'.join(['+'*n]+a+a[::-1])
puede usarse sin paréntesis para guardar 2 bytes más. +1 de mi parte sin embargo. Buena primera respuesta. :)lambda
)).2*i+1 == i+i+1 == i-(-i-1) == i-~i
.05AB1E , 14 bytes
Pruébalo en línea!
Explicación
También 14 bytes:
L‚˜'+×ćs.∞∊.c»
fuente
'+×s·ÅÉ'+×∊.C»
usarÅÉ
es otraÅÉ
pero lo descarté porque no pensé en usarlo·
para que funcionara.Pitón 3 ,
7978 bytesPruébalo en línea!
Gracias a estos consejos para jugar golf, Python responde por informarme sobre la
.center
función. Devuelve una lista de cadenas.fuente
R ,
13511096 bytesPruébalo en línea!
@ JayCe con el corte final.
La
rep
función se asigna a un operador infijo existente, tal<
o como^
esorep("+", n)
es equivalente a lo"<"("+", n)
que se puede escribir usando<
como operador infijo como en"+" < n
y acortado a"+"<n
.fuente
"+"
directamente en lugar de guardarlos ya quez
ahorra algunos bytes! Pruébelo aquí<
porrep
debajo de 100 caracteres! AquíCarbón de leña , 15 bytes
Pruébalo en línea! El enlace es a la versión detallada del código. Explicación:
Imprima un triángulo invertido de
+
s la altura de la entrada y casi el doble del ancho.Mueva el cursor hacia abajo para que caiga en la línea adicional después del reflejo.
Haz una imagen especular del triángulo.
Dibuje la línea adicional usando la columna actual para evitar tener que volver a leer la entrada.
Refleje la salida para que la línea adicional apunte a la izquierda.
fuente
Stax , 11 bytes
Ejecutar y depurarlo
fuente
Python 3 ,
7675 bytesPruébalo en línea!
fuente
QB64,
8279 bytesfuente
JavaScript (Node.js) ,
106105bytesPruébalo en línea!
________________________________________________
Segundo enfoque
JavaScript (Node.js) ,
1051009998 bytesPruébalo en línea!
fuente
Japt
-R
,1817 bytesPruébalo en línea!
fuente
PowerShell , 55 bytes
Pruébalo en línea!
fuente
+
lugar dex
. También puede hacer que su respuesta sea un poco más amigable para la comunidad al usar ¡ Pruébelo en línea! y agregando un enlace a su respuestaJ , 29 bytes
Pruébalo en línea!
Explicación:
fuente
Haskell ,
8582 bytesGuardado 3 bytes gracias a nimi !
Pruébalo en línea!
fuente
x
que ahorra 4 bytes: ¡ Pruébelo en línea!Ruby ,
7161 bytesPruébalo en línea!
fuente
PHP, 103 bytes
Ejecute como pipe con `-nR´ o pruébelo en línea .
fuente
PowerShell , 58 bytes
Pruébalo en línea!
Simplemente un bucle hacia arriba y hacia abajo, cada iteración genera el número apropiado de espacios y luego el número apropiado de signos más. Ho-hum
fuente
F # (Mono) , 123 bytes
Pruébalo en línea!
fuente
/home/runner/code.fs(2,10): error FS0039: The value or constructor 'String' is not defined. Cannot open assembly 'code.exe': No such file or directory.
PHP 102 bytes
Sé que puede ser mucho más pequeño que esto;) Greetz mangas
fuente
sed 4.2.2 , 69
La puntuación incluye +1 para la
-r
opción de sed.Pruébalo en línea!
fuente
Ruby , 59 bytes
Pruébalo en línea!
fuente
Python 3 , 98 bytes
Pruébalo en línea!
Versión legible:
fuente
Yabasic , 102 bytes
Una función anónima que toma la entrada como un número unario con
+
marcas de conteo y salidas a la consola.Pruébalo en línea!
Versión alternativa, 117 bytes
Una respuesta de función anónima que toma la entrada como un entero decimal y las salidas a la consola.
Pruébalo en línea!
fuente
sub
rutina definida por el usuario , no son parte de ninguna biblioteca y, por lo tanto, no pueden llamarse discretamente como pueden ser las funciones integradas (p. Ej.Abs(x)
). Puede leer un poco más sobre esto aquí si lo desea.JavaScript (Node.js) , 183 bytes
Pruébalo en línea!
Actualicé mi respuesta gracias a @JoKing
fuente
APL (Dyalog Unicode) , SBCS de 25 bytes
Pruébalo en línea!
Explicación:
fuente
1↓[2]
->0 1↓
o incluso mejor:c,⍨⌽1↓[2]c←
->⍉(⊖⍪1↓⊢)⍉
Java 8, 159 bytes
Definitivamente se puede jugar un poco más, pero es un comienzo.
Explicación:
Pruébalo en línea.
fuente
Japt
-R
,1816 bytesIntentalo
Explicación
fuente
Adjunto , 62 bytes
Pruébalo en línea!
Una lambda que toma el entero como argumento.
Ejemplo
fuente
T-SQL, 152 bytes
Según nuestras reglas de IO , la entrada se toma a través de la tabla t preexistente con un campo entero n .
Bucle de conteo manual, no muy "similar a SQL". Formateado:
fuente