Particiones en partes impares y distintas
Cuente las maneras de escribir un número como suma de partes impares: 10 tiene 10 particiones así, y por el teorema de Euler esa es también la cantidad de formas de partirlo en partes distintas. Exacto de 0 a 5000. Gratis en su navegador.
- Gratis
- Funciona en su navegador
- Sin registro
- Sus datos no salen de su equipo
Ejecutar — gratis
Ejemplo resuelto
- N
- 10
- Cantidad
- 10
Este contador devuelve el número exacto de maneras de escribir un entero no negativo n como suma de enteros positivos impares, sin considerar el orden. El teorema de particiones de Euler establece que ese mismo número cuenta también las particiones cuyas partes son todas distintas. Introduzca un entero para obtener un resultado decimal exacto, no una aproximación de coma flotante. El cálculo es determinista, no accede a la red y considera la partición vacía de cero como una partición válida.
Qué cuenta la calculadora
Una partición expresa un entero como suma de enteros positivos sin tener en cuenta el orden de los sumandos. Por tanto, invertir los mismos términos no crea otra partición. Esta calculadora limita la primera interpretación a partes impares: cada sumando debe ser impar, aunque un valor impar puede repetirse.
A la vez responde otra pregunta aparente, la cantidad de particiones en partes distintas, donde ningún entero positivo aparece dos veces. Ambas familias tienen el mismo tamaño para todo n no negativo, aunque sus miembros suelen ser diferentes. El resultado sirve tanto si su problema habla de sumandos impares como si exige sumandos sin repetición.
Para n igual a cero, el valor es uno por la suma vacía convencional. Los valores negativos se rechazan porque estas particiones ordinarias solo se definen para objetivos no negativos.
Por qué coinciden las partes impares y las distintas
El teorema de Euler puede entenderse mediante funciones generatrices o con una transformación directa. Permitir cualquier cantidad de cada parte impar genera un producto con un factor geométrico por cada entero impar. Exigir partes distintas genera otro producto en el que cada entero positivo se elige una vez o se omite.
Ambos productos tienen los mismos coeficientes, de modo que el coeficiente correspondiente a n proporciona el mismo conteo. También existe una biyección: se separan repetidamente potencias de dos de las partes impares repetidas y se combinan copias iguales para obtener partes distintas sin cambiar la suma. El proceso es reversible.
La implementación cuenta el lado de partes distintas con programación dinámica. Recorre cada parte una sola vez y actualiza las sumas objetivo en orden descendente, lo que impide reutilizarla durante su propia pasada. La aritmética BigInt conserva todos los dígitos y el entero final se serializa como cadena decimal.
Cómo usar e interpretar el resultado
Proporcione n como entero no negativo desde cero hasta el límite publicado. La respuesta repite n e incluye count, el número exacto de particiones que cumplen la condición. No debe elegir entre un modo de partes impares y otro de partes distintas, pues la identidad de Euler garantiza que ambos conteos son iguales.
Puede usar la capacidad para comprobar ejercicios de combinatoria, validar tablas de coeficientes, probar código simbólico de funciones generatrices o producir valores de referencia para otro programa determinista. El resultado cuenta particiones sin orden, no composiciones: cambiar el orden de los términos no añade un caso. Las repeticiones se permiten en la lectura de partes impares, pero se prohíben en la lectura de partes distintas.
Mantenga las respuestas grandes como cadenas salvo que su sistema admita enteros de precisión arbitraria. Fracciones, entradas ausentes, valores superiores al límite y enteros negativos producen un error de entrada tipado.
Qué puede hacer con ella
Comprobar ejercicios de combinatoria
Verifique conteos exactos cuando un problema use sumandos impares o exija que todas las partes sean distintas.
Validar funciones generatrices
Compare coeficientes calculados con un conteo exacto independiente basado en la identidad de particiones de Euler.
Crear tablas de referencia
Genere conteos decimales deterministas para pruebas, material docente o investigación de sucesiones enteras.
Preguntas frecuentes
¿Qué devuelve exactamente?
La respuesta devuelve n y el conteo exacto de sus particiones en partes impares, que también es el conteo en partes distintas.
¿Importa el orden?
No. Las particiones no tienen orden, por lo que reorganizar los mismos sumandos no crea otra partición.
¿Qué ocurre cuando n vale cero?
El conteo es uno y representa la partición vacía.
¿Cuántas particiones de 10 en partes impares hay?
Hay 10. Cada una escribe 10 como suma de números impares, con repeticiones permitidas y sin importar el orden. La misma cifra, 10, es la cantidad de formas de escribir 10 con partes que nunca se repiten.
¿Por qué un solo conteo responde a dos preguntas?
El teorema de particiones de Euler dice que las particiones en partes impares y en partes distintas son igual de numerosas para todo número. Al combinar copias iguales de una parte se pasa de un tipo al otro, y el paso es reversible.
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/numth/partitions-distinct-odd \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"n":10}'const res = await fetch("https://api.kit.forhosting.com/numth/partitions-distinct-odd", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"n": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/numth/partitions-distinct-odd",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"n": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/numth/partitions-distinct-odd", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"n":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"n":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/numth/partitions-distinct-odd", 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": 10
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.partitions_distinct_odd",
"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 | 5000 |
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
Qué cuenta la calculadora
El conteo se entrega como texto decimal para que JSON no redondee enteros exactos grandes.
Cómo usar e interpretar el resultado
La automatización mediante API cuesta $0.002 por solicitud.
Preguntas técnicas
¿Por qué count es una cadena?
Los conteos pueden superar el intervalo entero seguro de los números JSON; el texto decimal conserva cada dígito.
¿Se admiten enteros negativos?
No. Un n negativo devuelve un error invalid_input.
¿Cuánto cuesta una solicitud API?
Cada solicitud API cuesta $0.002.