Colors = {red, yellow, green, ..., n1}
Sizes = {small, medium, big, ..., n2}
Shapes = {round, soft, square, ..., n3}
Fills = {hollow, solid, gradient, ..., n4}
Cómo obtener todas las posibles combinaciones para las siguientes condiciones:
- El tamaño mínimo de las combinaciones es 1 y el tamaño máximo n es igual al número total de grupos: mínimo 1 {red}, máximo 4 {red, small, round, hollow}
- No se pueden repetir los elementos: {red, red} no es una combinación válida
- Sólo puede haber un elemento de cada grupo: {red, yellow} no sería una combinación válida
- El orden no importa: no hay que diferenciar entre {red, small} y {small, red}
Para el siguiente ejemplo, si no me he equivocado, he calculado que serían 63 combinaciones válidas:
Colors = {red, yellow, green}
Sizes = {small, medium, big}
Shapes = {round, soft, square}
9 (3+3+3) combinaciones de 1 elemento: {red}, {yellow}, {green}, ...
27 (3x3+3x3+3x3) combinaciones de 2 elementos: {red, small}, {red, medium}, {red, big} ...
27 (3x3x3) combinaciones de 3 elementos: {red, small, round}, {red, small, soft}, {red, small, square} ...
Qué formula podría usar en http://www.wolframalpha.com/ para resolver cualquier caso (número de grupos y número de elementos en cada grupo variables)? Basta con obtener el número total de combinaciones, no sería necesario generar el listado de combinaciones.
Gracias!
Para el ejemplo que he puesto de 3 grupos, cada uno con 3 elementos, es fácil calcular las combinaciones posibles fijándote un poco.
Lo que me gustaría saber es cómo hacerlo para cualquier caso: número de grupos variable, distinto número de elementos en cada grupo.
Por ejemplo, 5 grupos con diferentes números de elementos:
Colors = {red, yellow, green, blue, black, white}
Sizes = {tiny, small, medium, big}
Shapes = {round, soft, square}
Fills = {hollow, solid}
Font = {light, medium, bold}