Dado un alfabeto de tamaño $n$ cuántas cadenas de longitud $c$ contienen todas las letras del alfabeto al menos una vez?
Primero intenté utilizar una relación de recurrencia para resolverlo:
$$ T(c) = \left\{ \begin{array}{cr} 0 &\mbox{ if $c<n$} \\ n! &\mbox{ if $c = n$} \\ T(c-1) \cdot n \cdot c &\mbox{ if $c > n$} \end{array} \right. $$
Como no hay cadenas que contengan todas las letras si c < n, y si c = n entonces son todas las permutaciones. Cuando c > n se puede tomar cualquier cadena de tamaño (c-1) que contenga todas las letras (de las cuales hay $T(c-1)$ para elegir), usted elige qué letra añadir (de las que hay $n$ opciones) y hay $c$ diferentes posiciones para ponerlo. Sin embargo, esto da resultados mayores que $n^c$ (el número total de cadenas), así que no puede ser correcto, y me di cuenta de que era porque se podían contar algunas cadenas varias veces, ya que se pueden hacer tomando diferentes pasos de inserción.
Entonces pensé en ser más simple: eliges n posiciones en la cadena, pones cada letra del alfabeto en una de esas posiciones, y luego dejas que el resto de la cadena sea cualquier cosa:
$$ {c\choose{n}} \cdot n! \cdot n^{c-n} $$
Pero, de nuevo, esto cuenta cuerdas múltiples veces.
También he considerado la posibilidad de utilizar coeficientes multinomiales, pero como no sabemos cuántas veces aparece cada letra en la cadena, parece poco probable que sean de gran ayuda. También he probado otros métodos, algunos complicados y otros sencillos, pero ninguno parece funcionar.
¿Cómo se podría elaborar una fórmula para esto? Seguro que hay algo sencillo que se me escapa.
1 votos
Cuenta en cambio las que no contienen todas las letras. Deberá utilizar la exclusión por inclusión.
0 votos
Puede utilizar los coeficientes multinomiales de la siguiente manera: sume los coeficientes multinomiales sobre las particiones ordenadas de $c$ en $n$ naturales no nulos.