Dada una colección desordenada de enteros positivos por cualquier método de entrada razonable, devuelve todas las subcolecciones que tienen un número impar de elementos impares (es decir, tienen un total impar).
Esto es código golf por lo que debe intentar minimizar el recuento de bytes de su programa.
Dado que algunos idiomas solo tienen colecciones ordenadas (listas, matrices, vectores, etc.) o no tienen una colección desordenada que permita duplicados, puede usar colecciones ordenadas (independientemente de su elección de idioma), sin embargo, no debe generar ninguna colección duplicada con diferentes órdenes (p. ej. [2,3]
y[3,2]
. ). Puede imprimir en el orden que considere conveniente.
Casos de prueba
[2,3,7,2] -> [[3],[7],[2,3],[2,7],[2,2,3],[2,2,7]]
[2,4,6,8] -> []
[4,9] -> [[9],[4,9]]
code-golf
combinatorics
Post Rock Garf Hunter
fuente
fuente
[2, 2, 3]
, ¿podemos volver[[2, 2, 3], [2, 3], [2, 3]]
?Respuestas:
05AB1E , 6 bytes
Pruébalo en línea!
-2 bytes gracias a @EriktheOutgolfer
fuente
2%
se puede jugar al golfÉ
y}
se puede quitar. Pero su respuesta parece tener el problema.Python 3 , 93 bytes
Devuelve un conjunto de tuplas. Lo más probable es que sea demasiado tiempo.
Pruébalo en línea!
fuente
Pyth ,
1098 bytesPruébalo en línea!
fuente
{SMf%sT2y
parece guardar un byte.Python 2 , 91 bytes
Imprime un conjunto de tuplas. Si se permite un conjunto de cadenas,
tuple(sorted(y))
se puede reemplazar`sorted(y)`
por 86 bytes .Pruébalo en línea!
fuente
Jalea , 9 bytes
Pruébalo en línea!
Error solucionado gracias a Jonathan Allan.
fuente
Perl 6 , 50 bytes
Para filtrar las combinaciones del mismo orden, filté los duplicados convirtiéndolos en una
Bag
(colección desordenada) antes de comparar. Lamentablemente, no pude encontrar una manera de aceptar unaBag
entrada que fuera tan concisa.fuente
Brachylog , 11 bytes
Pruébalo en línea!
Esperaba encontrar una solución más corta, pero aquí está lo mejor que podía hacer.
Explicación
Sí, podría haber usado el módulo 2 para verificar la rareza, pero ese no es un enfoque extraño;)
fuente
Mathematica
31 4438 bytesEntre todos los subconjuntos del conjunto de entrada, devuelve aquellos para los cuales la suma
Tr
, es impar.6 bytes guardados gracias a alephalpha.
{{3}, {7}, {2, 3}, {2, 7}, {2, 2, 3}, {2, 2, 7}}
fuente
{2,3}
y{3,2}
no debe ser devuelto tanto (lo mismo con{2,7}
y{7,2}
).Select[Union@Subsets@Sort@#,OddQ@*Tr]&
PHP, 126 bytes
toma datos de los argumentos de la línea de comandos; ejecutar
-nr
o probarlo en línea .Descompostura
fuente