Partizioni in parti dispari e distinte
Conti i modi di scrivere un numero come somma di parti dispari: 10 ne ha 10, e per il teorema di Eulero è anche il numero di modi di dividerlo in parti distinte. Esatto da 0 a 5000. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- N
- 10
- Quantità
- 10
Questo contatore restituisce il numero esatto di modi in cui un intero non negativo n può essere scritto come somma di interi positivi dispari, ignorando l'ordine. Il teorema delle partizioni di Eulero afferma che lo stesso numero conta anche le partizioni con parti tutte distinte. Inserisca un intero per ottenere un risultato decimale esatto, non un'approssimazione in virgola mobile. Il calcolo è deterministico, non usa la rete e considera la partizione vuota di zero come una partizione valida.
Che cosa conta il calcolatore
Una partizione esprime un intero come somma di interi positivi senza considerare l'ordine degli addendi. Invertire gli stessi addendi non crea quindi una nuova partizione. Questo calcolatore limita la prima interpretazione alle parti dispari: ogni addendo deve essere dispari, ma uno stesso valore dispari può ripetersi.
Risponde contemporaneamente a una seconda domanda, il numero di partizioni in parti distinte, nelle quali nessun intero positivo può comparire due volte. Le due famiglie hanno la stessa cardinalità per ogni n non negativo, anche se i loro elementi appaiono normalmente diversi. Il risultato è pertanto utile sia quando il problema parla di addendi dispari sia quando richiede addendi non ripetuti.
Per n uguale a zero il risultato è uno, in virtù della somma vuota convenzionale. I valori negativi vengono rifiutati perché le partizioni ordinarie considerate qui sono definite solo per obiettivi non negativi.
Perché parti dispari e distinte coincidono
Il teorema di Eulero può essere compreso mediante funzioni generatrici o con una trasformazione diretta. Consentire un numero qualsiasi di ogni parte dispari produce un prodotto con un fattore geometrico per ciascun intero dispari. Richiedere parti distinte produce un altro prodotto in cui ogni intero positivo viene scelto una sola volta oppure omesso.
I due prodotti hanno coefficienti identici, quindi il coefficiente associato a n fornisce lo stesso conteggio. Esiste anche una biiezione: si separano ripetutamente le potenze di due dalle parti dispari ripetute e si combinano copie uguali, ottenendo parti distinte senza cambiare la somma. Il procedimento è reversibile.
L'implementazione conta il lato delle parti distinte con la programmazione dinamica. Visita ogni parte una volta e aggiorna le somme obiettivo in ordine decrescente, impedendone il riutilizzo nello stesso passaggio. L'aritmetica BigInt conserva ogni cifra e l'intero finale viene serializzato come stringa decimale.
Come usare e interpretare il risultato
Fornisca n come intero non negativo compreso tra zero e il limite pubblicato. La risposta ripete n e include count, il numero esatto di partizioni ammesse. Non deve scegliere tra una modalità a parti dispari e una a parti distinte, perché l'identità di Eulero garantisce che i due conteggi coincidano.
La capacità è adatta a controllare esercizi di combinatoria, convalidare tabelle di coefficienti, provare codice simbolico per funzioni generatrici o fornire valori di riferimento a un altro programma deterministico. L'output conta partizioni non ordinate, non composizioni: cambiare l'ordine degli stessi termini non aggiunge casi. Le ripetizioni sono ammesse nell'interpretazione dispari ma vietate in quella distinta.
Conservi le risposte grandi come stringhe, salvo che il sistema di destinazione gestisca interi a precisione arbitraria. Frazioni, input mancanti, valori oltre il limite e interi negativi producono un errore di input tipizzato.
Casi d'uso
Controllare esercizi di combinatoria
Verifichi conteggi esatti quando un problema usa addendi dispari o richiede parti tutte distinte.
Convalidare funzioni generatrici
Confronti i coefficienti calcolati con un conteggio esatto indipendente basato sull'identità di Eulero.
Creare tabelle di riferimento
Generi conteggi decimali deterministici per test, materiale didattico o ricerca su successioni intere.
Domande frequenti
Che cosa viene restituito esattamente?
La risposta restituisce n e il conteggio esatto delle sue partizioni in parti dispari, uguale anche al conteggio in parti distinte.
L'ordine è importante?
No. Le partizioni non sono ordinate, quindi riordinare gli stessi addendi non crea una nuova partizione.
Che cosa accade quando n è zero?
Il conteggio è uno e rappresenta la partizione vuota.
Quante partizioni di 10 in parti dispari esistono?
Ne esistono 10. Ognuna scrive 10 come somma di numeri dispari, con ripetizioni ammesse e senza contare l'ordine. Lo stesso valore, 10, conta i modi di scrivere 10 con parti che non si ripetono mai.
Perché un solo conteggio risponde a due domande?
Il teorema delle partizioni di Eulero afferma che le partizioni in parti dispari e quelle in parti distinte sono ugualmente numerose per ogni intero. Unire le copie uguali di una parte trasforma un tipo nell'altro, e il passaggio è reversibile.
Strumenti correlati
Per sviluppatori — accesso via API
Tutto quello che vedi in questa pagina è disponibile anche via API. Questa sezione è per i team che vogliono integrarlo nei propri sistemi; chi non ne ha bisogno può semplicemente usare lo strumento qui sopra.
Endpoint
Autenticazione con Bearer token: un POST mette in coda l'attività e il risultato arriva via webhook o link firmato.
Chiamala dal tuo 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)Esempio di richiesta
{
"n": 10
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "numth.partitions_distinct_odd",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}L'API è asincrona: ricevi subito un task_id e puoi fare polling fino a 1 richiesta al secondo.
Prezzi
Prezzo pubblicato, senza token né crediti. Se l'attività fallisce, non paghi.
Limiti
max_n | 5000 |
Errori
| HTTP | Codice | Significato |
|---|---|---|
401 | unauthorized | Chiave API mancante o non valida: controlla l'header Authorization. |
402 | insufficient_balance | Credito esaurito: ricarica per continuare a eseguire attività. |
404 | unknown_type | Tipo di attività sconosciuto: controlla il campo type della richiesta. |
429 | rate_limited | Troppe richieste in poco tempo: rallenta e riprova tra qualche secondo. |
Note tecniche
Che cosa conta il calcolatore
Il conteggio è restituito come testo decimale affinché JSON non arrotondi grandi interi esatti.
Come usare e interpretare il risultato
L'automazione tramite API costa $0.002 per richiesta.
Domande tecniche
Perché count è una stringa?
I conteggi possono superare l'intervallo intero sicuro dei numeri JSON; il testo decimale conserva ogni cifra.
Sono ammessi interi negativi?
No. Un valore n negativo restituisce un errore invalid_input.
Quanto costa una richiesta API?
Ogni richiesta API costa $0.002.