Elegir la técnica correcta depende de tres preguntas: si se utilizan todos los elementos, si el orden importa y si se permite repetir.
Permutaciones, variaciones y combinaciones resuelven problemas relacionados, pero no representan la misma situación. La diferencia está en cómo se seleccionan y organizan los elementos.
Antes de elegir una fórmula debemos traducir el enunciado a tres características: cuántos elementos hay, cuántas posiciones o selecciones se necesitan y qué efecto tienen el orden y la repetición.
Responder estas preguntas evita aplicar una fórmula de manera mecánica.
| Método | Elementos usados | Orden | Repetición | Fórmula |
|---|---|---|---|---|
| Permutación simple | Todos | Importa | No | n! |
| Permutación con repetición | Todos | Importa | Hay iguales | n! / (n₁! × ...) |
| Variación sin repetición | k de n | Importa | No | n! / (n - k)! |
| Variación con repetición | k de n | Importa | Sí | nk |
| Combinación sin repetición | k de n | No importa | No | n! / (k!(n-k)!) |
| Combinación con repetición | k de n | No importa | Sí | C(n+k-1,k) |
Indica las condiciones del problema y el asistente sugerirá el método de conteo correspondiente.
Si tenemos 4 tareas distintas y queremos ordenarlas todas, el orden importa, no hay repetición y se utilizan todos los elementos.
De 6 personas queremos asignar 3 cargos diferentes. El orden importa, no se repiten personas y solo se utilizan 3 de las 6.
De 6 personas queremos formar un equipo de 3. El orden no importa y no se repiten integrantes.
El equipo formado por Ana, Luis y Marta es el mismo sin importar cómo se los enumere.
Con 4 símbolos disponibles queremos construir códigos de 3 posiciones y se permite repetir.
Los códigos AAA y ABA son válidos si cada posición puede reutilizar cualquiera de los símbolos.
Podemos clasificar un problema según sus condiciones y devolver una recomendación.
function elegirMetodo(n, k, importaOrden, permiteRepetir) {
if (importaOrden && permiteRepetir) return "Variación con repetición";
if (importaOrden && k === n) return "Permutación simple";
if (importaOrden) return "Variación sin repetición";
if (permiteRepetir) return "Combinación con repetición";
return "Combinación sin repetición";
}
console.log(elegirMetodo(6, 3, false, false));
console.log(elegirMetodo(4, 2, true, true));
La condición k = n distingue la permutación simple de una variación sin repetición.
Las fórmulas están conectadas:
Una combinación puede convertirse en una variación al ordenar sus k elementos. Luego, dividir por k! elimina las formas de ordenamiento equivalentes.
Estas palabras orientan, pero siempre hay que confirmar las condiciones exactas del problema.
La elección entre permutaciones, variaciones y combinaciones depende de interpretar correctamente el problema. Las tres preguntas fundamentales —elementos utilizados, importancia del orden y repetición— permiten seleccionar el modelo adecuado.
En el próximo tema estudiaremos los coeficientes binomiales, que proporcionan una notación y propiedades muy útiles para las combinaciones.