ForHosting KIT · Mathématiques

Calculateur de partitions d'entiers

Comptez les façons d'écrire un entier comme somme quand l'ordre ne compte pas : 4 s'écrit 4, 3+1, 2+2, 2+1+1 et 1+1+1+1, donc p(4) vaut 5, et 5 en a 7. Gratuit dans votre navigateur.

  • Gratuit
  • Fonctionne dans votre navigateur
  • Sans inscription
  • Vos données restent sur votre appareil
Utilisez-le depuis WebAPIE-mailTelegramApp bientôt
Si vous saisissez
N
5
Vous obtenez
Valeur
7
Quantité
7
Puissance (W)
7

La fonction de partition d'entiers p(n) répond à une question classique de dénombrement : de combien de manières peut-on écrire un entier non négatif n comme somme d'entiers positifs lorsque l'ordre des termes n'importe pas ? Par exemple, 4 égale 4, 3+1, 2+2, 2+1+1 et 1+1+1+1, si bien que p(4) vaut cinq ; 5 admet sept partitions et 10 en admet quarante-deux. Les partitions apparaissent en théorie des nombres, dans les fonctions génératrices, en mécanique statistique et dans les concours de programmation dès que l'on compte des sommes de multi-ensembles plutôt que des compositions ordonnées ou des partitions d'ensembles étiquetés. Cette capacité accepte un entier non négatif n et renvoie le p(n) exact sous forme de chaîne décimale calculée par programmation dynamique en BigInt, de sorte que des valeurs bien au-delà des limites habituelles d'entiers sûrs restent correctes chiffre par chiffre. Un n négatif est rejeté avec une erreur de validation claire plutôt qu'un zéro silencieux ou une réponse fausse.

Comment la fonction de partition p(n) est définie

Une partition entière non restreinte d'un entier non négatif n est une façon d'écrire n comme somme d'entiers positifs dans laquelle l'ordre des termes est sans importance. Par convention p(0) vaut un, en comptant la partition vide de zéro. Les petites valeurs classiques des manuels sont p(1)=1, p(2)=2 (à savoir 2 et 1+1), p(3)=3, p(4)=5, p(5)=7, p(6)=11 et p(10)=42.

La fonction génératrice ordinaire de la suite est le produit infini, sur k supérieur ou égal à un, de un sur un moins x à la puissance k, qui encode que chaque entier positif peut apparaître un nombre quelconque de fois comme part. Une récurrence pratique utilisée en logiciel est le programme dynamique classique de type rendu de monnaie : on initialise un tableau avec une façon de former la somme zéro, puis pour chaque taille de part de un à n, on ajoute les façons de compléter le reste.

Cette récurrence remplit p(n) de façon exacte et ne compte jamais deux fois les ordres parce que les parts ne sont introduites qu'une seule fois en taille non décroissante.

Des objets voisins mais distincts comprennent les compositions, où l'ordre compte et où il y a deux puissance n moins un compositions de n ; les partitions d'ensembles comptées par les nombres de Stirling de seconde espèce ou les nombres de Bell, qui partitionnent des éléments étiquetés plutôt que d'additionner des entiers positifs non étiquetés ; et les partitions restreintes qui exigent des parts distinctes, des parts impaires seulement, ou un nombre fixe de parts.

Cette implémentation n'utilise jamais d'approximation en virgule flottante, d'échantillonnage Monte-Carlo ni de tables externes : elle remplit un tableau unidimensionnel de BigInt afin que chaque chiffre soit exact. Le chemin est pleinement déterministe — sans graines aléatoires, sans horloges, sans réseau et sans dérive de modèle —, si bien que le même n produit toujours la même chaîne.

Où les partitions d'entiers apparaissent dans le travail réel

Les cours de théorie des nombres et les concours de programmation demandent constamment combien de partitions non restreintes un n donné possède, comment p(n) croît, ou si un tableau de petites valeurs concorde avec les congruences de Ramanujan et d'autres identités classiques. Les concepteurs d'algorithmes utilisent les comptages de partitions pour analyser des espaces d'états de type sac à dos entier, dénombrer des décompositions en multi-ensembles d'un budget de ressources, ou dimensionner des tables de DP dont les dimensions suivent les tailles de parts.

En physique et en combinatoire, p(n) se relie aux fonctions de partition bosoniques et aux coefficients de fonctions génératrices ; les enseignants montrent souvent une courte liste de partitions d'un petit n puis demandent le seul comptage. La préparation aux entretiens et l'entraînement olympique ont fréquemment besoin d'un p(n) fiable sans maintenir à la main de grandes tables ni risquer des comptages de compositions décalés d'une unité.

Si vous avez ensuite besoin de compositions où l'ordre compte, de partitions d'ensembles via les nombres de Stirling de seconde espèce, des seuls nombres de Bell, de partitions restreintes à parts distinctes ou impaires seulement, ou d'une énumération explicite de chaque partition plutôt que du comptage, traitez-les comme des intentions de recherche distinctes plutôt que de surcharger cette page.

Gardez n dans la borne documentée afin que la latence du niveau gratuit reste prévisible, et préférez des consommateurs de chaînes pour la valeur renvoyée car p(n) quitte la plage des entiers sûrs bien avant cinq mille.

Devoirs et concours de théorie des nombres

Calculez p(n) exact pour des problèmes d'olympiades, des exercices de mathématiques discrètes et des clés de réponse automatisées demandant des partitions d'entiers non restreintes.

Vérifications de valeurs de manuel

Vérifiez les valeurs classiques telles que p(5)=7 et p(10)=42 lors de l'enseignement des fonctions génératrices ou de la construction de démonstrations de partitions.

Qu'est-ce que la fonction de partition d'entiers p(n) ?

p(n) compte les façons d'écrire n comme somme d'entiers positifs lorsque l'ordre n'importe pas. Par exemple p(4)=5 et p(5)=7.

En quoi cela diffère-t-il des compositions ?

Les compositions comptent des sommes ordonnées (ainsi 1+3 et 3+1 sont distinctes). Les partitions ignorent l'ordre, si bien que ces deux sont la même partition de 4.

Que se passe-t-il si n est négatif ?

Ce calculateur exige n ≥ 0 ; un n négatif est rejeté et n'est pas facturé.

Pourquoi la valeur est-elle une chaîne plutôt qu'un Number ?

Les nombres de partitions dépassent rapidement les entiers sûrs de JavaScript. Les chaînes décimales conservent chaque chiffre exact pour les grands p(n).

Quel est le coût ?

L'outil du navigateur est gratuit et s'exécute en local.

Tout sur cette page est disponible par programmation. Cette section s'adresse aux équipes qui veulent l'intégrer à leurs systèmes ; les autres peuvent simplement utiliser l'outil ci-dessus.

POSThttps://api.kit.forhosting.com/combo/partition-count

Authentification par jeton Bearer : un seul POST met la tâche en file d’attente, et le résultat vous parvient par webhook ou lien signé.

curl -X POST https://api.kit.forhosting.com/combo/partition-count \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"n":5}'
{
  "n": 5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "combo.partition_count",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

L’API est asynchrone : chaque appel renvoie un task_id immédiatement, puis vous interrogez l’état à raison d’une requête par seconde.

par requête$0.002

Le prix est publié, sans tokens ni crédits. Une tâche qui échoue n’est pas facturée.

min_n0
max_n5000
HTTPCodeSignification
401unauthorizedClé API absente ou invalide : vérifiez l’en-tête Authorization.
402insufficient_balanceSolde insuffisant : rechargez votre compte pour lancer cette tâche.
404unknown_typeType de tâche inconnu : vérifiez le champ type de votre requête.
429rate_limitedTrop de requêtes : ralentissez la cadence, puis réessayez.

L'outil gratuit du navigateur et l'API payante partagent une même fonction pure, afin que les démonstrations en classe et les pipelines automatisés ne divergent jamais pour un même n.

Comment la fonction de partition p(n) est définie

Les bornes déclarées maintiennent n entre zéro et cinq mille inclus, ce qui conserve une latence de pire cas adaptée à un outil gratuit dans le navigateur et à un chemin léger de Worker, tout en couvrant les besoins de concours, de classe et de pipelines pour des comptages exacts de partitions.

Ce que vous envoyez et ce que vous recevez

L'entier n doit se situer de zéro à cinq mille inclus. Les messages d'erreur nomment le champ fautif et la règle enfreinte afin que les clients de formulaire et les scripts corrigent l'entrée sans deviner. En cas de succès la réponse inclut toujours le n normalisé, value et count et p comme la même chaîne décimale exacte de p(n), et une courte chaîne de formule telle que p(5) pour l'affichage. Fournissez un entier n obligatoire sous le champ n (alias number, value ou N). Les champs manquants, les non-entiers, les décimaux et tout n négatif sont rejetés avec invalid_input et ne sont pas facturés. Vérifications d'exemple : n égal à cinq produit count sept ; n égal à dix produit count quarante-deux ; n égal à zéro produit count un ; n égal à quatre produit count cinq ; n égal à un produit count un ; n égal à moins trois produit invalid_input car la fonction de partition n'est pas définie pour des arguments négatifs dans cette règle de produit ; n égal à un décimal ou à une chaîne non numérique produit aussi invalid_input. Le contrat est un JSON stable adapté aux tests unitaires, aux démonstrations en classe et aux pipelines par lots. Le tarif des appels API réussis est la base publiée de $0.002 par élément ; les échecs de validation ne consomment pas le solde prépayé.

Où les partitions d'entiers apparaissent dans le travail réel

Comme cette capacité est un moteur de parse pur, le tarif API est la base publiée de $0.002 par élément réussi et l'échec de validation ne consomme pas le solde.

Analyse DP et sac à dos

Dimensionnez des espaces d'états de décomposition en multi-ensembles et validez des fixtures de comptage de partitions dans des pipelines de DP entier sans tables en virgule flottante.

Consulter la documentation complète du KIT →