ForHosting KIT · Matemáticas

Particiones en partes distintas

El número 5 se reparte en partes distintas de 3 formas: 5, 4+1 y 3+2. Escriba cualquier entero de 0 a 5000 y obtenga el número exacto de sus particiones en partes distintas, tenga las cifras que tenga. Gratis en su navegador.

  • Gratis
  • Funciona en su navegador
  • Sin registro
  • Sus datos no salen de su equipo
Úselo desde WebAPIEmailTelegramApp pronto
Si escribe
N
10
Obtiene
Valor
10
Cantidad
10
Q
10

La función de partición en partes distintas q(n) responde a una pregunta clásica de teoría de números: ¿de cuántas formas puede usted escribir un entero no negativo n como suma de enteros positivos cuando cada sumando aparece a lo sumo una vez y el orden no importa? Por ejemplo, 5 es igual a 5, 4+1 y 3+2, de modo que q(5) vale tres; 6 tiene cuatro particiones en partes distintas y 10 tiene diez. Este recuento difiere de la función de partición sin restricciones p(n), que permite partes repetidas como 2+2 o 1+1+1. Las particiones en partes distintas aparecen en identidades de funciones generadoras, en el teorema de Euler que las equipara con las de partes impares, en olimpiadas y en ejercicios de programación dinámica. Esta capacidad acepta un entero no negativo n y devuelve el q(n) exacto como cadena decimal calculada con programación dinámica 0-1 en BigInt, de modo que los valores más allá de los enteros seguros se mantienen correctos dígito a dígito. Un n negativo se rechaza con un error de validación claro en lugar de un cero silencioso o una respuesta incorrecta.

Cómo se definen y cuentan las particiones en partes distintas

Una partición de un entero no negativo n en partes distintas es una forma de escribir n como suma de enteros positivos en la que ninguna parte se repite y el orden de los sumandos es irrelevante. Por convención q(0) vale uno, contando la partición vacía del cero. Valores clásicos de libro son q(1)=1 (a saber, 1), q(2)=1 (a saber, 2), q(3)=2 (3 y 2+1), q(4)=2 (4 y 3+1), q(5)=3 (5, 4+1, 3+2), q(6)=4 y q(10)=10.

La función generadora ordinaria de la sucesión es el producto infinito sobre k mayor o igual que uno de uno más x elevado a k, lo que codifica que cada entero positivo puede aparecer cero veces o exactamente una vez como parte.

Un algoritmo práctico en software es el programa dinámico clásico estilo mochila 0-1: inicialice un arreglo con una forma de formar la suma cero y, para cada tamaño de parte de uno hasta n, recorra el arreglo de sumas restantes de n hacia abajo hasta ese tamaño y sume las formas que excluyen la parte a las que la incluyen. El orden descendente garantiza que cada parte se usa a lo sumo una vez, de modo que el uso múltiple sin restricción nunca ocurre.

Objetos relacionados pero distintos incluyen las particiones sin restricción p(n), donde las partes pueden repetirse; las composiciones, donde el orden importa; las particiones de conjuntos contadas por números de Stirling de segunda especie; y las particiones solo en partes impares, que Euler demostró equinumerables con las de partes distintas para todo n. Esta implementación no usa aproximación en coma flotante, muestreo Monte Carlo ni tablas externas: rellena un arreglo unidimensional BigInt para que cada dígito sea correcto.

El camino es totalmente determinista —sin semillas aleatorias, relojes, red ni deriva de modelo—, de modo que el mismo n siempre produce la misma cadena.

Dónde aparecen las particiones en partes distintas en el trabajo real

Los cursos de teoría de números y los concursos de programación preguntan a menudo cuántas particiones de n usan sumandos dos a dos distintos, cómo se compara ese conteo con p(n) sin restricción, o si una tabla de valores pequeños coincide con la identidad de Euler con particiones en partes impares.

Los diseñadores de algoritmos usan conteos en partes distintas al analizar espacios de estados tipo suma de subconjuntos 0-1, al contar combinaciones de tamaños de recurso únicos que totalizan un presupuesto, o al dimensionar tablas de DP cuyas dimensiones siguen tamaños de parte usados a lo sumo una vez.

Las lecciones de combinatoria y funciones generadoras conectan q(n) con el producto de uno más x elevado a k y con identidades restringidas tipo Rogers–Ramanujan; los educadores suelen listar las particiones distintas de un n pequeño y luego pedir solo el conteo. La preparación de entrevistas y olimpiadas necesita con frecuencia un q(n) fiable sin mantener tablas a mano ni contar por error composiciones o particiones sin restricción.

Si más adelante necesita p(n) sin restricción, composiciones donde el orden importa, particiones de conjuntos vía Stirling de segunda especie, o un listado explícito de cada partición en partes distintas en lugar del conteo, trátelos como intenciones de búsqueda separadas en lugar de sobrecargar esta página. Mantenga n dentro del límite documentado para que la latencia del nivel gratuito sea predecible, y prefiera consumidores de cadena para el valor devuelto porque q(n) acaba saliendo del rango de enteros seguros para argumentos grandes.

Deberes y concursos de teoría de números

Calcule q(n) exacto para problemas de olimpiada, ejercicios de matemática discreta y claves de respuesta automáticas que piden particiones en partes distintas.

Comprobaciones de aula de la identidad de Euler

Verifique valores clásicos como q(5)=3 y q(10)=10 al enseñar funciones generadoras o al comparar conteos de partes distintas y de partes impares.

¿Qué es la función de partición en partes distintas q(n)?

q(n) cuenta las formas de escribir n como suma de enteros positivos cuando ninguna parte se repite y el orden no importa. Por ejemplo q(5)=3 y q(10)=10.

¿En qué se diferencia de las particiones sin restricción p(n)?

La p(n) sin restricción permite partes repetidas (así 2+2 cuenta para 4). Las particiones en partes distintas prohíben repeticiones, así que 4 solo tiene dos: 4 y 3+1.

¿Qué ocurre si n es negativo?

Esta calculadora exige n ≥ 0; un n negativo se rechaza y no se cobra.

¿Por qué el valor es una cadena y no un número?

Los números de partición en partes distintas superan los enteros seguros de JavaScript para n grande. Las cadenas decimales mantienen cada dígito exacto.

¿Cuánto cuesta?

La herramienta del navegador es gratuita y se ejecuta en local.

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.

POSThttps://api.kit.forhosting.com/numth/distinct-partitions

¿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.

curl -X POST https://api.kit.forhosting.com/numth/distinct-partitions \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":10}'
{
  "n": 10
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.distinct_partitions",
  "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.

Por solicitud$0.002

Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.

HTTPCódigoSignificado
401unauthorizedAPI key ausente o inválida.
402insufficient_balanceEl saldo no cubre el precio de la tarea.
404unknown_typeEl tipo de tarea no existe.
429rate_limitedDemasiadas peticiones. Use el webhook en vez de sondear.

La herramienta gratuita del navegador y la API de pago comparten una sola función pura, así que las demos de clase y los pipelines automatizados nunca divergen para el mismo n.

Cómo se definen y cuentan las particiones en partes distintas

Los límites declarados mantienen n entre cero y cinco mil inclusive, lo que mantiene la latencia del peor caso adecuada para una herramienta gratuita en el navegador y un Worker ligero, cubriendo a la vez necesidades de concurso, aula y pipelines de conteos exactos en partes distintas.

Qué envía usted y qué recibe de vuelta

El entero n debe estar entre cero y cinco mil inclusive. Los mensajes de error nombran el campo ofensor y la regla fallida para que clientes de formulario y scripts corrijan la entrada sin adivinar. En caso de éxito la respuesta incluye siempre el n normalizado, value y count y q como la misma cadena decimal exacta de q(n), y una fórmula breve como q(5) para mostrar. Proporcione un entero n obligatorio en el campo n (alias number, value o N). Campos ausentes, no enteros, decimales y cualquier n negativo se rechazan con invalid_input y no se cobran. Comprobaciones de ejemplo: n igual a cinco da conteo tres; n igual a diez da conteo diez; n igual a cero da conteo uno; n igual a seis da conteo cuatro; n igual a tres da conteo dos; n igual a menos tres da invalid_input porque la función de partes distintas no está definida para argumentos negativos en esta regla de producto; n igual a un decimal o a una cadena no numérica también da invalid_input. El precio de las llamadas API exitosas es la base publicada de $0.002 por ítem; los fallos de validación no consumen saldo prepago.

Dónde aparecen las particiones en partes distintas en el trabajo real

Como esta capacidad es un motor parse puro, el precio API es la base publicada de $0.002 por ítem exitoso y la validación fallida no consume saldo.

Análisis de mochila 0-1 y suma de subconjuntos

Valide fixtures de conteo en partes distintas dentro de pipelines de DP entera que usan cada tamaño de parte a lo sumo una vez, sin tablas en coma flotante.

Ver la documentación completa del KIT →