He aquí un hands-on intuitiva de aproximación al problema. Supongamos que tenemos un alfabeto $\mathcal{A}=\{a_1,\ldots,a_k\}$. Dado números enteros no negativos $n_1,\ldots,n_k$$m_1,\ldots, m_k$, vamos
$$\left[\begin{array}{c}n_1,\ldots,n_k\\m_1,\ldots,m_k\end{array}\right]$$
indicar el número de palabras que se pueden formar a partir de $n_i$ copias de $a_i$, de tal manera que la palabra contiene, como (posiblemente no consecutivos) larga, un patrón que contiene exactamente $m_i$ copias de la carta $a_i$. (La cuenta es independiente de cuál sea el modelo elegido.) El problema es calcular
$$\left[\begin{array}{c}4,\ldots,4\\ 1,\ldots,1\end{array}\right]$$
donde hay 13 términos en la parte superior e inferior.
Algunos casos especiales son fáciles: si alguna de las $n_i$ o $m_i-n_i$ es negativo, el número es cero, y si $k=0$ el recuento $1$ (para la palabra vacía). Si $n_i=m_i$ todos los $i$, entonces el recuento $1$, dado que el patrón de las cuentas de la totalidad de la palabra. Trivial valores pueden ser calculados a través de dos reglas recursivas:
El Cero de la Regla: Si $m_i=0$ algunos $i$, luego
$$\left[\begin{array}{c}n_1,\ldots,n_k\\m_1,\ldots,m_k\end{array}\right]=
\binom{\sum n_j}{n_i}\left[\begin{array}{c}n_1,\ldots,\hat{n_i},\ldots,n_k\\m_1,\ldots,\hat{m_i},\ldots,m_k\end{array}\right]$$
donde los sombreros indican que $n_i$ $m_i$ han sido omitidos.
Para ver esto, observe que si $m_i=0$, el patrón en realidad no implican la letra de $a_i$, por lo que el $a_i$'s puede ser colocado arbitrariamente; el coeficiente binomial cuenta las maneras de hacerlo. Como un caso especial, tenga en cuenta que cuando se $m_i=0$ todos los $i$, el Cero de la Regla nos dice que el conde es un coeficiente multinomial:
$$\left[\begin{array}{c}n_1,\ldots,n_k\\ 0,\ldots,0\end{array}\right]=\binom{\sum_i n_i}{n_1,\ldots,n_k},$$
como era de esperar, ya que el patrón está vacía, por lo que cada permutación de las letras de los partidos.
La Descamación de la Regla: Para cualquier $j$, $1\le j \le k$, nos puede "pelar" la primera letra de la palabra para conseguir:
$$\left[\begin{array}{c}n_1,\ldots,n_k\\m_1,\ldots,m_k\end{array}\right]=
\sum_{i=1}^k \left[\begin{array}{c}n_1,\ldots,n_{i-1},n_i-1,n_{i+1},\ldots,n_k\\m_1,\ldots,m_{i-1},m_i-\delta_{ij},m_{i+1},\ldots, m_k\end{array}\right]$$
donde como de costumbre, $\delta_{ij}$ $1$ fib $i=j$. (Para ver esto, podemos asumir que el patrón comienza con $a_j$. Considerar todas las posibilidades, $a_i$ para la primera letra de la palabra; se inicia una coincidencia de patrón iff $i=j$.)
A ver que estas reglas suficiente, tenga en cuenta que se produce una descamación de la suma de los términos estrictamente menor $\sum n_i$.
Por último, tenga en cuenta que el recuento no se modifica si la misma permutación se aplica a la $n_i$'s y el $m_i$'s. Mientras esto no hace que la expresión más simple, es útil cuando se utiliza programación dinámica para minimizar el número de subexpresiones que necesitan ser evaluados. Un sencillo Mathematica aplicación comprueba la excelente respuesta proporcionada por @nczkxv.
> S[Array[4 &, 13], Array[1 &, 13]] // Timing
> {1.171875, 50972203946555791528902451677555189167087762981}