Introducción:
Creo que todos hemos oído hablar de él, pero aquí un resumen muy breve: Noé reunió dos de cada especie de animal en el planeta, machos y hembras, para salvar en su Arca durante una gran inundación. La cita real de la Biblia es:
Génesis 7: 2-3
Debes llevar contigo siete de cada tipo de animal limpio, el macho y su compañero, dos de cada tipo de animal inmundo, el macho y su compañero, y también siete de cada tipo de ave en el cielo , macho y hembra, para preservar su descendencia sobre la faz de la tierra.
fuente
Pero por el bien de este desafío, ignoraremos la parte limpia / sucia y la parte donde tomó siete de cada animal. Este desafío es solo sobre esta parte:
dos de cada tipo de animal
inmundo, el macho y su compañero
Reto:
Entrada:
Se le da una lista de enteros positivos (en orden aleatorio).
Salida:
Dos valores distintos que indican si es una 'Lista de Noé' o no. Esto no necesariamente tiene que ser un valor verdadero / falso , por lo que también podría ser 0
/ 1
en Java / C #, o 'A'
/ 'B'
en cualquier lenguaje, para dar algunos ejemplos.
¿Cuándo es una lista una 'Lista de Noé'? Cuando hay exactamente dos de cada número entero en la lista.
Reglas de desafío:
- I / O es flexible. La entrada puede ser una lista / matriz / secuencia de enteros / flotantes / cadenas, o leer uno por uno desde STDIN. La salida puede ser dos valores distintos , devueltos desde una función o salida a STDOUT / a file.
- Los enteros en la lista de entrada están en orden aleatorio y se garantiza que son positivos dentro del rango .
- Se garantiza que la lista de entrada no estará vacía.
- Tener un entero un múltiplo de dos veces presente por encima de 2 (es decir, 4, 6, 8, etc.) será falso. Es decir,
[6,4,4,6,4,7,4,7]
es Falsey-, aunque aún se podía crear pares iguales como este:[[4,4],[4,4],[6,6],[7,7]]
.
Reglas generales:
- Este es el código de golf , por lo que la respuesta más corta en bytes gana.
No permita que los lenguajes de code-golf lo desanimen a publicar respuestas con lenguajes que no sean codegolf. Trate de encontrar una respuesta lo más breve posible para 'cualquier' lenguaje de programación. - Las reglas estándar se aplican a su respuesta con las reglas de E / S predeterminadas , por lo que puede usar STDIN / STDOUT, funciones / método con los parámetros adecuados y programas completos de tipo retorno. Tu llamada.
- Las lagunas predeterminadas están prohibidas.
- Si es posible, agregue un enlace con una prueba para su código (es decir, TIO ).
- Además, se recomienda agregar una explicación para su respuesta.
Casos de prueba:
Truthy:
[7,13,9,2,10,2,4,10,7,13,4,9]
[1,2,3,1,2,3]
[10,100,1000,1,100,10,1000,1]
[123,123]
[8,22,57189,492,22,57188,8,492,57188,57189,1,1]
Falsey:
[6,4,4,6,4,7,4,7]
[2,2,2,2,2,2]
[5,1,4,5,1,1,4]
[77,31,5,31,80,77,5,8,8]
[1,2,3,2,1]
[44,4,4]
[500,30,1]
[1,2,1,1]
[2,4,6,4,4,4]
[2,23,34,4]
[2,23,3,3,34,4]