CombinatoriaProblemas resueltos

Guiado: IMO 1987/P1 — puntos fijos de permutaciones y conteo doble

¿Cuántas permutaciones de tienen exactamente puntos fijos? La pregunta parece pedir una fórmula complicada; la respuesta correcta es una identidad sorprendentemente limpia, descubierta contando una misma cosa de dos maneras.

DificultadNacional
Etiquetasconteo-doblepermutacionespuntos-fijosimoproblema-resuelto
Requisitosconteo-dobleprincipios-conteoinclusion-exclusion
AutorAdrián García Bouzas
Actualizado2026-06-08
Enunciado (IMO 1987, Problema 1)

Para cada entero n1n \geq 1, sea pn(k)p_n(k) el número de permutaciones del conjunto {1,2,,n}\{1, 2, \ldots, n\} que tienen exactamente kk puntos fijos (es decir, exactamente kk valores ii tales que σ(i)=i\sigma(i) = i). Demostrar que

k=0nkpn(k)=n!.\sum_{k=0}^{n} k \cdot p_n(k) = n!.
Análisis: ¿qué clase de identidad es esta?

El lado izquierdo es una suma ponderada sobre las posibles cantidades de puntos fijos; el lado derecho, n!n!, es simplemente el número total de permutaciones. Esta forma —"una suma complicada de cantidades por sus frecuencias es igual al tamaño total de algo"— es la firma característica del conteo doble: la suma de la izquierda está, casi con seguridad, contando el tamaño de un conjunto de pares (algo,algo maˊs)(\text{algo}, \text{algo más}) agrupando primero por una coordenada, mientras que n!n! lo cuenta agrupando por la otra.

La pregunta crucial es: ¿qué conjunto de pares es ese?

Solución

Paso 1 — Reinterpretar la suma como un conteo de pares. Observamos que

k=0nkpn(k)=k=0nk{σ:σ tiene exactamente k puntos fijos}.\sum_{k=0}^{n} k \cdot p_n(k) = \sum_{k=0}^n k \cdot |\{\sigma : \sigma \text{ tiene exactamente } k \text{ puntos fijos}\}|.

El sumando kpn(k)k \cdot p_n(k) cuenta —para las permutaciones con exactamente kk puntos fijos— el número de esas permutaciones, multiplicado por el número de puntos fijos que cada una tiene. Esto es exactamente lo que se obtiene contando el conjunto

P={(σ,i):σSn, σ(i)=i}\mathcal{P} = \{(\sigma, i) : \sigma \in S_n,\ \sigma(i) = i\}

agrupando por σ\sigma primero: para cada permutación σ\sigma con exactamente kk puntos fijos, hay kk elementos ii tales que (σ,i)P(\sigma, i) \in \mathcal{P}; sumando sobre todas las permutaciones (agrupadas según su número de puntos fijos kk) se obtiene precisamente kkpn(k)=P\sum_{k} k \cdot p_n(k) = |\mathcal{P}|.

Paso 2 — Contar el mismo conjunto P\mathcal{P} agrupando por ii. Fijemos un valor i{1,,n}i \in \{1, \ldots, n\} y contemos cuántas permutaciones σ\sigma satisfacen σ(i)=i\sigma(i) = i. Estas son exactamente las permutaciones que fijan ii y permutan arbitrariamente los n1n - 1 elementos restantes — hay (n1)!(n-1)! de ellas. Como hay nn elecciones posibles para ii,

P=i=1n{σ:σ(i)=i}=i=1n(n1)!=n(n1)!=n!.|\mathcal{P}| = \sum_{i=1}^{n} |\{\sigma : \sigma(i) = i\}| = \sum_{i=1}^{n} (n-1)! = n \cdot (n-1)! = n!.

Paso 3 — Concluir por conteo doble. Como P|\mathcal{P}| se ha calculado de dos formas —agrupando por σ\sigma (Paso 1) y agrupando por ii (Paso 2)— ambas deben coincidir:

k=0nkpn(k)=P=n!.\sum_{k=0}^{n} k \cdot p_n(k) = |\mathcal{P}| = n!. \qquad \blacksquare
La idea que hay que retener

Lo notable de esta solución es que no requiere conocer una fórmula cerrada para pn(k)p_n(k) — y de hecho, encontrar tal fórmula (que involucra los desarreglos DnkD_{n-k}, ver inclusion-exclusion: pn(k)=(nk)Dnkp_n(k) = \binom{n}{k} D_{n-k}) sería mucho más laborioso y, para este problema concreto, completamente innecesario. El conteo doble permite "saltarse" el cálculo intermedio: en lugar de calcular cada pn(k)p_n(k) y luego sumar, se reorganiza la suma completa como el cardinal de un conjunto de pares, y ese cardinal se calcula de la forma más simple posible —fijando la coordenada que produce un conteo trivial—.

Esta es la lección metodológica central de conteo-doble: ante una suma ponderada cuyo valor parece "casualmente" simple, sospecha que hay un conjunto de pares natural detrás, y busca la forma de agrupar que lo hace evidente.

Una segunda mirada: vía esperanza (para comparar enfoques)

Es instructivo notar que esta identidad también se obtiene —de forma casi instantánea— mediante el lenguaje del método probabilístico: si σ\sigma es una permutación uniformemente aleatoria de SnS_n, sea X=X = "número de puntos fijos de σ\sigma" =i=1n1[σ(i)=i]= \sum_{i=1}^n \mathbf{1}[\sigma(i) = i]. Por linealidad de la esperanza,

E[X]=i=1nPr[σ(i)=i]=i=1n(n1)!n!=i=1n1n=1.\mathbb{E}[X] = \sum_{i=1}^n \Pr[\sigma(i) = i] = \sum_{i=1}^n \frac{(n-1)!}{n!} = \sum_{i=1}^n \frac{1}{n} = 1.

Por otro lado, E[X]=k=0nkPr[X=k]=kkpn(k)n!\mathbb{E}[X] = \sum_{k=0}^n k \cdot \Pr[X = k] = \sum_k k \cdot \frac{p_n(k)}{n!}. Igualando, kkpn(k)=n!E[X]=n!\sum_k k \cdot p_n(k) = n! \cdot \mathbb{E}[X] = n! — la misma identidad, obtenida con el lenguaje de la esperanza en lugar del lenguaje de pares. Son, en el fondo, el mismo argumento: la linealidad de la esperanza no es más que conteo doble normalizado por el tamaño del espacio muestral. Reconocer esta equivalencia —que dos "métodos" aparentemente distintos son, vistos de cerca, la misma idea con distinto vocabulario— es una de las observaciones más valiosas que se pueden hacer al estudiar combinatoria.