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
pse agregó para el requisito de zigzag.Explicación:
fuente
]al parecer vive entre mayúsculas y minúsculas, por lodque]y]deAque ambos han sido decrementos, lo cual no está permitido. Entonces, elpestá 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,defYlambdano son desiguales por lo que sólo obtuveevalizquierda, que se almacena eneHay 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 comoreplace(' ','')resultado más bytes)Como
printno 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
' ' * 0por' ' [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
δyδ½Å: programa completo / bloque de argumento único. δy: los signos de los deltas de la entrada δ - Las diferencias de los signos. Resultados en una secuencia de 2 o -2 para matrices desiguales, ya que los signos se alternan, dando -1-1 = -2 o 1 - (- 1) = 2. Å - Comprueba si todos los elementos producen resultados verdaderos cuando ... ½ - Reducido a la mitad.fuente
Japt
-!,1614 bytesBueno, esto no es bonito, ¡pero estoy feliz de que funcione!
Salidas
truepara zig-zag ofalsesi 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
1por la verdad,0por 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
mapes zigzag!05AB1E , 8 bytes
Devuelve
1.0para0.0secuencias 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