Paradoja del cumpleaños: calculadora de día compartido para n personas
En un grupo de solo 23 personas, la probabilidad de que dos compartan cumpleaños ya ronda el 50 %, aunque el año tenga 365 días. Indique el tamaño del grupo y el número de días y obtenga la probabilidad exacta de coincidencia. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- N
- 23
- Número de días posibles
- 365
- Probabilidad
- 0,5072972343
- Todos distintos
- 0,4927027657
La paradoja del cumpleaños es el hecho sorprendente de que en un grupo de apenas veintitrés personas, la probabilidad de que al menos dos compartan cumpleaños ya ronda el cincuenta por ciento, aunque el año tenga trescientos sesenta y cinco días. Las mismas matemáticas se aplican a cualquier problema de colisiones: cubetas de hash, franjas de reuniones, códigos aleatorios o calendarios personalizados con d etiquetas posibles. Esta calculadora toma el tamaño del grupo n y el número de días d, multiplica el producto complementario de que todos los cumpleaños sean distintos y devuelve uno menos ese valor como una probabilidad decimal estable. Los valores de n o d inferiores a uno se rechazan con un error de validación claro, de modo que las entradas incompletas o absurdas nunca produzcan una falsa certeza silenciosa. Los resultados son aritmética totalmente determinista, sin muestreo y sin modelo de lenguaje.
Qué mide la paradoja del cumpleaños y por qué sorprende
La mayoría de la gente estima el riesgo de cumpleaños compartidos comparando el tamaño del grupo con la duración del año. Esa intuición busca una coincidencia con una persona fija, por lo que subestima gravemente las colisiones. La pregunta correcta es si alguna pareja del grupo colisiona.
Con n personas hay n sobre dos parejas posibles, y cada pareja tiene una pequeña probabilidad de coincidir en uno de los d días. Esos eventos por parejas no son independientes, así que la forma cerrada y limpia trabaja con el complemento: se parte de la probabilidad de que cada persona caiga en un día aún libre y después se resta de uno. Formalmente, fije un orden arbitrario del grupo.
La primera persona puede tener cualquier día. La segunda debe evitar el día de la primera, lo que ocurre con probabilidad (d menos uno) sobre d. La tercera debe evitar los dos días anteriores cuando eran distintos, y así sucesivamente.
Al multiplicar esos términos sucesivos se obtiene P(todos distintos). Uno menos ese producto es P(al menos un día compartido). Para el calendario habitual, con d igual a trescientos sesenta y cinco y n igual a veintitrés, el producto cae justo por debajo de un medio, de modo que la probabilidad de día compartido supera el cincuenta por ciento.
Con n igual a cincuenta y siete la cifra ya supera el noventa y nueve por ciento. La misma fórmula sirve para modelos de año bisiesto con trescientos sesenta y seis días, semanas laborables cortas con siete franjas o espacios de etiquetas sintéticos como prefijos de PIN de cuatro dígitos. Comprender el producto complementario basta para desmitificar la paradoja sin ruido de Monte Carlo ni tablas de combinaciones de parejas.
Qué puede hacer con ella
Intuición sobre colisiones de hashes e identificadores
Los ingenieros ilustran cotas aproximadas de cumpleaños para códigos cortos, claves de caché o etiquetas de cubetas fijando d al tamaño del espacio de etiquetas y barriendo n hasta que la probabilidad de coincidencia resulta inaceptable.
Oráculos deterministas para pruebas y herramientas
Las plataformas de entrevistas, las aplicaciones de cuestionarios y las suites de CI llaman a un oráculo estable que rechaza n o d inferiores a uno y devuelve campos de probabilidad idénticos para entradas idénticas.
Preguntas frecuentes
¿Qué ocurre si n o d es inferior a 1?
Se requiere al menos una persona y al menos una etiqueta de día; los valores cero y negativos se rechazan y no se cobran.
¿Por qué la probabilidad ya ronda el 50 % con 23 personas?
La calculadora multiplica la probabilidad de que cada persona nueva evite todos los cumpleaños anteriores entre 365 días.
¿Es gratuita la calculadora de la paradoja del cumpleaños?
La herramienta del navegador funciona gratis en su dispositivo.
¿Utiliza simulación o muestreo aleatorio?
No. Evalúa el producto complementario cerrado con aritmética determinista en coma flotante (espacio logarítmico para mayor estabilidad). Los mismos n y d siempre devuelven la misma probabilidad, sin ruido de Monte Carlo.
¿Puedo usar un número de días distinto de 365?
Sí. El número de días puede ser cualquier entero de 1 a 1000000, así que la misma fórmula sirve para un año bisiesto, 7 días de la semana, franjas de reunión o códigos aleatorios en los que quiera medir la probabilidad de coincidencia.
Herramientas relacionadas
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/prob/birthday-paradox \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":23,"d":365}'const res = await fetch("https://api.kit.forhosting.com/prob/birthday-paradox", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 23,
"d": 365
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/prob/birthday-paradox",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 23,
"d": 365
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/prob/birthday-paradox", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":23,"d":365}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":23,"d":365}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/prob/birthday-paradox", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"n": 23,
"d": 365
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "prob.birthday_paradox",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Límites
max_n | 100000 |
max_d | 1000000 |
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |
Notas técnicas
Cómo esta calculadora valida la entrada y evalúa el producto
Invoque la capacidad con dos enteros obligatorios: n, el número de personas, y d, el número de días posibles o etiquetas distintas. El motor comprueba que ambos valores sean enteros finitos dentro de los límites publicados: n de uno a cien mil, y d de uno a un millón. La multiplicación en espacio logarítmico mantiene los productos intermedios alejados del desbordamiento inferior prematuro cuando los grupos crecen, sin dejar de ser aritmética doble puramente determinista. Se aceptan los alias people o group_size para n, y days o labels para d. Los campos ausentes, los valores no enteros, n inferior a uno, d inferior a uno y los valores por encima de los máximos fallan con invalid_input y no se cobran. Tras la validación, si n es mayor que d, el principio del palomar se aplica de inmediato: al menos dos personas deben compartir día, por lo que probability es uno, all_distinct es cero y guaranteed es true. En caso contrario, el motor acumula el logaritmo de cada factor (d menos i) sobre d para i de uno a n menos uno, exponencia la suma, recorta el resultado en coma flotante al intervalo unidad y devuelve probability igual a uno menos ese valor de all_distinct. Los campos de la respuesta son n, d, probability, all_distinct y guaranteed.
Uso práctico, límites, precios y canales de entrega
Use la herramienta del navegador cuando quiera una probabilidad de colisión instantánea mientras enseña probabilidad discreta, diseña un juego de emparejamientos o comprueba por qué veintitrés es el famoso umbral de las aulas para trescientos sesenta y cinco días. Los resultados son totalmente deterministas: los mismos n y d siempre producen la misma probabilidad, el mismo complemento y la misma marca guaranteed. No hay modelo de lenguaje, ni servicio externo de probabilidad ni aleatoriedad, por lo que la capacidad puede fijarse con seguridad en comprobaciones de integración continua y en materiales didácticos reproducibles. Use la API cuando un script, una plataforma educativa, un entorno de entrevistas, una demostración de colisiones de hash o un planificador de capacidad necesite JSON estable para muchas parejas (n, d) bajo un mismo contrato. Cada solicitud correcta es un artículo facturable a $0.002; la validación fallida no consume saldo. Los rangos aceptados mantienen el producto O(n) acotado para los entornos aislados de Worker y, a la vez, cubren calendarios escolares, espacios de etiquetas de varios años y cubetas sintéticas mucho mayores que un solo año. Conecte el endpoint a tutoriales de probabilidad, oráculos de entrevistas de programación, estimadores de colisiones de planificación o demostraciones docentes de criptografía donde prefiera el clásico producto complementario a histogramas de muestreo aproximados que nunca acaban de estabilizarse en el valor verdadero.
Casos de integración
Comprobaciones en el aula y en los libros de texto
Profesores y estudiantes verifican el clásico umbral n=23, d=365 y exploran cómo cambiar la duración del calendario desplaza el cruce del cincuenta por ciento sin calcular a mano productos largos.
Preguntas técnicas
¿Cómo calculo la probabilidad de la paradoja del cumpleaños?
Envíe un JSON con los enteros n (personas) y d (días posibles) a prob.birthday_paradox. La respuesta incluye la probabilidad de al menos un día compartido, el complemento all_distinct y una marca guaranteed cuando n supera a d.