ForHosting KIT · Matemáticas

Todas las composiciones ordenadas de un entero

El número 4 tiene 8 composiciones, desde 1+1+1+1 hasta el propio 4, y esta herramienta las enumera todas en un orden fijo con el total al lado. Admite cualquier n de 1 a 16. 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
4
Obtiene
Cantidad
8

Una composición ordenada de un entero positivo n es una manera de escribir n como suma de enteros positivos en la que el orden de los sumandos importa: 1+2 y 2+1 son composiciones distintas de 3, y siempre hay exactamente 2 elevado a n menos uno composiciones en total. Esta capacidad recibe un único entero positivo n y devuelve cada composición como un arreglo ordenado de partes, más el recuento total, de modo que usted no tenga que construir a mano un árbol recursivo ni arriesgarse a omitir una rama al revisar tareas, generar casos de prueba o explorar combinatoria vecina a las particiones.

Qué son las composiciones ordenadas y en qué difieren de las particiones

En teoría de números y combinatoria, una composición de n es una secuencia ordenada de enteros positivos que suman n. A diferencia de las particiones de enteros, donde solo importa el multiconjunto de partes y 1+2 se identifica con 2+1, las composiciones tratan cada orden como un objeto distinto. Para todo n mayor o igual que uno hay exactamente dos elevado a n menos uno composiciones: cada composición corresponde a colocar u omitir un separador entre unidades consecutivas en una fila de n unos.

Los libros de texto usan composiciones cuando el orden codifica secuencia, jerarquía o asignación por etapas —por ejemplo, tamaños sucesivos de bloque en un calendario, longitudes de racha en una cadena binaria o tamaños de paso a lo largo de un camino que debe cubrir exactamente n unidades—. Los estudiantes suelen confundir ambas familias porque las dos responden a «cómo puede escribirse n como suma», y sin embargo solo las composiciones atienden al orden de izquierda a derecha.

Devolver la lista ordenada completa hace concreta esa distinción: usted ve cada reordenamiento, no un representante canónico ordenado, y el campo de recuento debe coincidir con la fórmula cerrada para que detecte de inmediato una enumeración manual incompleta.

Cómo la capacidad enumera las composiciones y cuándo se niega

El motor construye cada composición por expansión recursiva de la primera parte: para una suma restante r prueba cada tamaño de parte k desde uno hasta r, antepone o añade k al prefijo en crecimiento y continúa hasta que el resto sea cero, momento en que se registra la secuencia completa. Ese recorrido produce un orden estable y determinista —solicitudes idénticas siempre generan el mismo arreglo de arreglos— sin depender de relojes, aleatoriedad ni estado de red.

La respuesta informa el propio n, el arreglo de composiciones y un recuento igual a la longitud de ese arreglo (que siempre es dos elevado a n menos uno para un n válido). Los campos n ausentes, no enteros o malformados se rechazan de la misma manera y nunca se cobran.

Dónde usar la lista y cuánto cuesta

Los usos típicos incluyen verificar respuestas de estudiantes que listan las composiciones de un n dado, generar casos de prueba exhaustivos para funciones que aceptan secuencias ordenadas de partes, explorar identidades combinatorias que cuentan composiciones con tamaños de parte restringidos filtrando después la lista completa, y documentar opciones de escalonamiento cuando un presupuesto de n unidades puede dividirse en fases ordenadas.

Mantenga n dentro de los límites documentados para que la respuesta siga siendo manejable; si solo necesita el recuento, aún puede usar esta herramienta para un n pequeño o aplicar la fórmula cerrada dos elevado a n menos uno fuera de la herramienta para trabajo teórico mayor. La ruta del navegador corre localmente y no requiere cuenta. Trate el recuento devuelto como autoritativo para los arreglos listados en lugar de recalcular la longitud en código del cliente que podría desviarse de este contrato.

Verificación de tareas y concursos

Compare la lista ordenada de composiciones de un estudiante para un n dado contra la enumeración canónica completa y su recuento, en vez de calificar árboles manuales parciales.

Exploración de combinatoria y demostraciones docentes

Muestre en vivo cómo el orden distingue las composiciones de las particiones, y confirme que el recuento devuelto siempre es igual a dos elevado a n menos uno.

¿Cómo enumero todas las composiciones ordenadas de un entero?

La respuesta incluye las composiciones como arreglos de partes, más el recuento.

¿Cuál es la diferencia entre una composición y una partición?

Las composiciones consideran el orden significativo (1+2 difiere de 2+1). Las particiones ignoran el orden y conservan solo el multiconjunto de partes.

¿Cuántas composiciones tiene el 4?

Tiene 8: 1+1+1+1, 1+1+2, 1+2+1, 1+3, 2+1+1, 2+2, 3+1 y 4. Coincide con 2^(n-1), así que si su lista hecha a mano tiene menos, le falta alguna.

¿Por qué n solo llega hasta 16?

La lista se duplica cada vez que n sube en uno, así que los valores grandes darían una respuesta enorme. Hasta 16 la lista completa sigue siendo manejable; si solo necesita cuántas hay, le basta la fórmula 2^(n-1).

¿La lista sale siempre en el mismo orden?

Sí. El mismo n devuelve siempre la misma lista en el mismo orden, construida probando cada primera parte de la más pequeña a la más grande, para que pueda comparar respuestas línea por línea.

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/compositions-list

¿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/compositions-list \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":4}'
{
  "n": 4
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "numth.compositions_list",
  "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.

Cómo la capacidad enumera las composiciones y cuándo se niega

Usted envía un cuerpo JSON con un único campo obligatorio n, un entero positivo de al menos uno y a lo sumo dieciséis. Los valores menores que uno fallan con invalid_input porque el cero y los negativos no son enteros positivos bajo la definición habitual de composición. Los valores por encima del tope publicado también fallan con invalid_input: el tamaño de la lista se duplica con cada incremento de n, de modo que una enumeración sin límite dispararía el tamaño de la respuesta y la CPU del Worker; el máximo documentado mantiene el listado completo práctico tanto para el navegador como para la API.

Dónde usar la lista y cuánto cuesta

Use la herramienta gratuita del navegador cuando quiera una comprobación visual rápida para un n pequeño, o llame a la API cuando un script, un libro de calificaciones, un generador o un cuaderno de investigación deban resolver muchos valores de la misma forma cada vez. El uso de la API se descuenta del saldo prepago del KIT al precio base publicado de $0.002 por solicitud exitosa; una validación fallida no consume saldo.

Generación exhaustiva de casos de prueba

Introduzca valores pequeños de n en la API y use cada composición como caso de entrada para funciones que procesan secuencias ordenadas de enteros positivos que suman un presupuesto.

¿Por qué la herramienta rechaza un n grande?

El número de composiciones es 2^(n-1). Por encima del máximo publicado la lista completa es demasiado grande para enumerarse con seguridad en una sola solicitud, así que la llamada falla con invalid_input.

¿La lista de composiciones de un entero es gratis?

El widget del navegador es gratis y corre localmente. Las llamadas a la API usan saldo prepago del KIT al precio base publicado de $0.002; una entrada inválida no se cobra.

¿El resultado es siempre el mismo para el mismo n?

Sí. El algoritmo es enumeración recursiva pura sin aleatoriedad ni marcas de tiempo, de modo que entradas idénticas producen un JSON idéntico.

Ver la documentación completa del KIT →