Especificaciones
Dado un número n
, genera una "flecha de meme" ASCII (mayor que el símbolo >
) de tamaño n
.
n
siempre será un número entero positivo, mayor que 0.
Ejemplos
n = 2
\
\
/
/
n = 5
\
\
\
\
\
/
/
/
/
/
Código de muestra
Aquí hay un programa de muestra, escrito en Crystal, que devuelve los resultados correctos. Ejecútalo como ./arrow 10
.
arrow.cr
:
def f(i)
i.times { |j|
j.times { print ' ' }
puts "\\"
}
i.times { |j|
(i-j-1).times { print ' ' }
puts '/'
}
end
f(ARGV[0].to_i)
Reglas
- Este es el código de golf . La respuesta más corta gana. Sin embargo, no seleccionaré una respuesta, porque la respuesta más corta puede cambiar con el tiempo.
- Las lagunas estándar no están permitidas.
n
ser cero?Respuestas:
Lienzo , 2 bytes.
Pruébalo aquí!
fuente
C (gcc) , 56 bytes
Pruébalo en línea!
fuente
Python 2 , 54 bytes
Pruébalo en línea!
Salidas con una nueva línea final.
fuente
05AB1E , 6 bytes
Pruébalo en línea!
Explicación
fuente
C # (compilador interactivo de Visual C #) , 66 bytes
Guardado un byte gracias a @someone.
Pruébalo en línea!
fuente
n*2-b-1
->n*2+~b
C64Mini / C64 BASIC (y otras variantes de CBM BASIC), se utilizan 52 bytes BASIC tokenizados
Aquí está la versión no ofuscada para la explicación:
Cualquier número ingresado
N
en la línea cero se reduce en uno ya que elTAB
comando está indexado a cero; LosFOR/NEXT
bucles en las líneas de la dos a la cuatro y de la cinco a la siete muestran la parte superior e inferior si lameme
flecha respectivamente (representada por una fuente desplazadaM
y desplazadaN
en modo gráfico )fuente
for
puede serfO
(f
- shofto
),print
is?
, etc.0inputn:n=n-1:fOi=0ton:?tA(i)"\":nE:fOi=0ton:?tA(i)"/":nE
- ocupa 57 bytes.Ruby ,
11199777368645756 bytes-12 bytes gracias a Benjamin Urquhart , -43 gracias a manatwork y -2 bytes gracias a Value Ink .
Pruébalo en línea!
Explicación:
Soluciones alternativas (pero más largas)
Un amigo leyó esta respuesta y luego trató de idear un par de enfoques más. Poniéndolos aquí también, para que no se pierdan en las grandes redes.
inyectar y no desplazar, 72 bytes
Pruébalo en línea!
downto, inject y unshift, 80 bytes
Pruébalo en línea!
intrigante, dos bucles no anidados, 127 bytes
Pruébalo en línea!
fuente
String#rjust
(¡ Pruébelo en línea! ).Perl 5
-p
, 36 bytesPruébalo en línea!
fuente
Código T-SQL, 80 bytes
Pruébalo en línea
Consulta T-SQL, 96 bytes
Para que esto funcione en línea, tuve que hacer algunas modificaciones menores. Los espacios al comienzo de una fila no se muestran en el fragmento en línea. Así que estoy usando ascii 160 en su lugar. Cuando se ejecuta en el estudio de administración, es posible cambiar la configuración para mostrar el resultado como texto, lo que daría como resultado los espacios correctos en este script publicado.
Pruébalo en línea
fuente
PowerShell ,
4441 bytesPruébalo en línea!
fuente
MarioLANG ,
719677 bytesPruébalo en línea!
Esto fue más difícil de lo esperado ...
fuente
brainfuck , 125 bytes
Pruébalo en línea!
fuente
Carbón de leña , 5 bytes
Pruébalo en línea! El enlace es a la versión detallada del código. Explicación:
Ingrese un número e imprima una línea diagonal de
\
s de esa longitud.Refleja la línea verticalmente.
fuente
APL (NARS), 40 caracteres, 80 bytes
prueba:
fuente
Retina 0.8.2 , 32 bytes
Pruébalo en línea! Explicación:
Genera dos líneas de
n
espacios.Convierte la línea superior en una
\
diagonal.Convierta la línea inferior en una
/
diagonal.fuente
C (gcc) ,
6765 bytes-2 bytes gracias a ceilingcat
Pruébalo en línea!
fuente
Python 2 ,
8584818075 bytesPruébalo en línea!
fuente
PowerShell , 50 bytes
Pruébalo en línea!
Buscará hacerlo para que solo atraviese el rango una vez. Sin embargo, no está mal para el método sin cerebro.
fuente
Ramita, 115 bytes
Construye la cadena hacia atrás, "devolviéndola" al final.
Utiliza una macro para generar todos los resultados.
Esta macro tiene que estar en un archivo e importarse así:
Puede probarlo en https://twigfiddle.com/5hzlpz (haga clic en "Mostrar resultado bruto").
fuente
Haskell ,
5249 bytes-3 bytes gracias al Sriotchilism O'Zaic .
Pruébalo en línea!
fuente
g$n-1
lugar deg(n-1)
. Tampoco es necesario contar elf=
ya quef
nunca se hace referencia.MATL,
141312 bytes1 Byte guardado gracias a @LuisMendo
Explicación
Pruébelo en MATL Online
fuente
Python 3 ,
9083 bytesPruébalo en línea!
-7 bytes gracias a @squid
fuente
Rockstar, 133 bytes
Pruébelo en línea aquí !
Dado que Rockstar no es famoso por las operaciones de cadena, se necesita relativamente mucho código para hacerlo (recursivamente fue aún más largo).
El tamaño de la flecha se toma como entrada.
fuente
PHP ,
796361 bytesPruébalo en línea!
Recursivo en PHP.
-12 bytes por @manatwork
fuente
\ / \ /> , 74 bytes
Explicación: (líneas giradas según el punto de inicio)
fuente
\/\/> (pronounced wɜrm)
Gracias lo odio. (jk, estoy deseando intentarlo)Python 3 , 55 bytes
Pruébalo en línea!
fuente
Python 2 , 63 bytes
Pruébalo en línea!
fuente
Stax , 10 bytes
Ejecutar y depurarlo
fuente
SimpleTemplate , 100 bytes
Este fue un desafío bastante divertido, pero algunos errores en el lenguaje dificultaron la optimización.
Básicamente, recorre los valores hacia atrás, trabajando la cadena desde la mitad.
Cómo debería ser la respuesta
Debido a los errores, el código no se interpretaba correctamente.
Así sería el código, si el compilador no tuviera ningún error (86 bytes):
Oh, bueno, al menos la solución funciona: x
fuente
JavaScript (Node.js) , 42 bytes (si se permite el rastreo de una nueva línea)
Pruébalo en línea!
JavaScript (Node.js) ,
4846 bytesPruébalo en línea!
fuente