Su tarea es escribir un programa o función de computadora que tome una lista de enteros positivos de al menos 2 y determine si son un "zigzag". Una secuencia es un zigzag si y solo si los números se alternan en ser más grandes y más pequeños que el número que viene antes que ellos. Por ejemplo, y son zigzags pero y no lo son.
Para su decisión, debe generar uno de dos valores consistentes diferentes para cada posibilidad (zigzag y no zigzag).
Los puntos de código de su programa o función también deben ser un zigzag. Esto significa que cuando tomas la secuencia de puntos de código, debería ser un zigzag.
Este es el código de golf, por lo que las respuestas se puntuarán en bytes con menos bytes mejor.
code-golf
number
sequence
decision-problem
restricted-source
Asistente de trigo
fuente
fuente
Respuestas:
Jalea , 5 bytes
Devuelve (zigzag) o 1 (no zigzag).0 1
Los puntos de código son en la página de códigos Jelly[73,205,73,176,174] .
Pruébalo en línea!
Cómo funciona
fuente
Haskell , 87 bytes
Pruébalo en línea!
Quería hacer rodar la pelota en términos de respuestas de Haskell. Todavía no puedo ver una manera de mejorar esto, pero estoy convencido de que se puede hacer. Estoy ansioso por lo que la gente pueda hacer desde aquí.
fuente
MATL , 9 bytes
Pruébalo en línea! O verificar todos los casos de prueba
¡Mi primer programa MATL! El penúltimo
p
se agregó para el requisito de zigzag.Explicación:
fuente
]
al parecer vive entre mayúsculas y minúsculas, por lod
que]
y]
deA
que ambos han sido decrementos, lo cual no está permitido. Entonces, elp
está principalmente allí para tener un incremento de punto de código entre los dos.Python 2 ,
225223161139 bytes-2 bytes gracias a Jakob
-62 bytes gracias a Dennis
Pruébalo en línea!
Los créditos para el algoritmo lleno de baches van a esta respuesta
input
,print
,exec
,def
Ylambda
no son desiguales por lo que sólo obtuveeval
izquierda, que se almacena ene
Hay 2 formas principales de derivación la restricción, la colocación de
"+"
oentre los pares no llenas de baches, I optado por la primera (
es más corto para cada uso, pero necesitaría dar como
replace(' ','')
resultado más bytes)Como
print
no está lleno de baches, no puedo usarlo directamente, y dado que no es una función, no puedo usarlo en el interioreval()
, así que tuve que usarloinput(result)
para generar el resultadofuente
' ' * 0
por' ' [1: ]
.input(text)
para escribir en STDOUT.K (ngn / k) , 23 bytes
Pruébalo en línea!
fuente
Ohm v2 , 5 bytes
Pruébalo en línea!
Cómo funciona
fuente
Japt
-!
,1614 bytesBueno, esto no es bonito, ¡pero estoy feliz de que funcione!
Salidas
true
para zig-zag ofalse
si no.Intentalo
Los puntos de código se
[228,39,45,32,109,39,103,32,228,39,97,32,232,205]
incluyen como prueba en el enlace de arriba.Explicación
fuente
Jalea , 6 bytes
Pruébalo en línea!
Vuelve
1
por la verdad,0
por la falsedad.Puntos de código :
[73, 205, 9, 97, 73, 171]
( válido )fuente
Perl 6 , 61 bytes
Pruébalo en línea!
Los puntos de código son:
Y sí, esos son caracteres Unicode allí. Esta es más o menos mi solución original, con algunos espacios y llaves combinadas.
fuente
05AB1E , 10 bytes
Pruébalo en línea!
Explicación
Los puntos de código son:
[165, 68, 196, 47, 165, 40, 196, 50, 81, 80]
fuente
JavaScript (ES6),
6260 bytesPruébalo en línea!
Puntos de código:
fuente
map
es zigzag!05AB1E , 8 bytes
Devuelve
1.0
para0.0
secuencias en zigzag y no zigzagueantes.Los puntos de código están
[164,108,176,164,195,2,109,25]
en la página de códigos 05AB1E .Pruébalo en línea.
Explicación:
fuente