Crei un tabellone a eliminazione diretta con bye automatici
Cinque squadre formano un tabellone da otto posti con tre bye per le prime teste di serie, una partita iniziale e tre turni fino alla finale; lo stesso elenco produce sempre lo stesso tabellone. Gratis nel suo browser.
- Gratis
- Funziona nel suo browser
- Senza registrazione
- I suoi dati restano sul dispositivo
Esegui gratis nel browser
Esempio risolto
- Partecipanti
- North Stars, River Hawks, City Lions, Valley Foxes, Coastal Bears
- Numero di partecipanti
- 5
- Dimensione del tabellone
- 8
- Numero di bye
- 3
- Numero di round
- 3
Trasformi un elenco ordinato di partecipanti in un tabellone completo a eliminazione diretta. Lo strumento calcola la successiva dimensione che sia una potenza di due, inserisce soltanto i bye necessari e numera ogni incontro fino alla finale. Non viene effettuato alcun sorteggio casuale: lo stesso elenco genera sempre esattamente lo stesso tabellone.
Prepari l’elenco nell’ordine delle teste di serie
Inizi con almeno due nomi e li disponga nell’ordine che il tabellone deve riconoscere. La prima voce diventa la testa di serie 1, la seconda la 2 e così via. I nomi possono indicare persone, squadre, club, scuole, progetti o altri concorrenti, ma ogni voce deve essere una stringa non vuota.
Gli spazi iniziali e finali vengono rimossi, così le etichette copiate dalle iscrizioni restano pulite. I nomi duplicati sono conservati, perché concorrenti diversi possono legittimamente condividere lo stesso nome visualizzato; aggiunga una città, una divisione o un codice quando sia necessario distinguerli. Il generatore non mescola il campo, non consulta classifiche e non introduce casualità.
Un input identico produce quindi sempre lo stesso piano. Se il piazzamento dipende dalla classifica, ordini i nomi prima della richiesta. Separare la politica di selezione dalla costruzione permette a ogni torneo di applicare le proprie regole pubblicate senza ipotesi nascoste.
Comprenda dimensione, incontri e bye
Un tabellone a eliminazione diretta funziona in modo naturale quando la dimensione è una potenza di due: 2, 4, 8, 16 e così via. Se il numero di partecipanti è compreso tra due valori, il generatore sceglie la più piccola potenza di due capace di contenerli tutti. La differenza costituisce il numero di bye.
Per esempio, cinque concorrenti richiedono otto posti: tre teste di serie avanzano senza giocare e gli altri due disputano l’incontro iniziale. I bye vengono assegnati in modo deterministico alle prime teste di serie, mentre i rimanenti sono abbinati nell’ordine inviato. Ogni incontro iniziale indica nome e numero di serie.
Un incontro con bye specifica inoltre chi avanza automaticamente. I turni successivi includono riferimenti come «Vincitore dell’incontro 1», consentendo di collegare i risultati senza inventarli. La risposta riporta anche partecipanti, dimensione, numero di bye e turni, rendendo semplici convalida e riepilogo.
Inserisca il tabellone nel flusso dell’evento
I turni restituiti possono alimentare una vista grafica, un programma stampabile, un archivio degli incontri o una lista operativa. Legga turni e incontri nell’ordine fornito. Nel turno iniziale mostri direttamente i nomi; in presenza di un bye, faccia avanzare il concorrente indicato senza richiedere un punteggio.
Nei turni seguenti sostituisca ogni riferimento con il vincitore dell’incontro citato. La capacità crea soltanto la struttura: non raccoglie punteggi, sceglie vincitori, assegna campi, gestisce ritiri o modifica le teste di serie. Queste responsabilità devono restare nell’applicazione, affinché le regole siano esplicite.
Una buona integrazione conserva il tabellone generato come piano iniziale immutabile e registra separatamente i risultati usando i numeri degli incontri. In questo modo rimane una cronologia anche dopo un ritiro o una correzione. Controlli l’elenco prima della pubblicazione, perché cambiarne l’ordine modifica il tabellone.
Casi d'uso
Organizzare un torneo locale
Converta l’elenco definitivo degli iscritti in un tabellone numerato che lo staff possa pubblicare e gestire.
Aggiungere tabelloni a un software per eventi
Generi incontri prevedibili e riferimenti di avanzamento alla chiusura delle iscrizioni.
Pianificare una competizione interna
Costruisca una struttura a eliminazione chiara per squadre, giochi, proposte, dimostrazioni o gare scolastiche.
Domande frequenti
Come vengono calcolati i bye?
Il campo viene esteso alla più piccola potenza di due che contenga tutti. I posti vuoti diventano bye.
Chi riceve un bye?
I bye vanno ai primi partecipanti nell’ordine delle teste di serie inviato, secondo una regola deterministica.
Il generatore mescola i nomi?
No. Non usa mai la casualità. Ordini o mescoli l’elenco prima dell’invio se il regolamento richiede un sorteggio.
Due partecipanti possono avere lo stesso nome?
Sì. I nomi visualizzati duplicati restano invariati e i numeri di serie distinguono comunque le voci.
Lo strumento registra punteggi e vincitori?
No. Crea il tabellone iniziale e i riferimenti di avanzamento; l’applicazione utilizzatrice gestisce i risultati.
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/game/tournament-bracket-build \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"participants":["North Stars","River Hawks","City Lions","Valley Foxes","Coastal Bears"]}'const res = await fetch("https://api.kit.forhosting.com/game/tournament-bracket-build", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"participants": [
"North Stars",
"River Hawks",
"City Lions",
"Valley Foxes",
"Coastal Bears"
]
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/game/tournament-bracket-build",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"participants": [
"North Stars",
"River Hawks",
"City Lions",
"Valley Foxes",
"Coastal Bears"
]
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/game/tournament-bracket-build", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"participants":["North Stars","River Hawks","City Lions","Valley Foxes","Coastal Bears"]}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"participants":["North Stars","River Hawks","City Lions","Valley Foxes","Coastal Bears"]}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/game/tournament-bracket-build", 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
{
"participants": [
"North Stars",
"River Hawks",
"City Lions",
"Valley Foxes",
"Coastal Bears"
]
}Esempio di risposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "game.tournament_bracket_build",
"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.
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
L’ordine dei nomi viene considerato l’ordine delle teste di serie, perciò il risultato è stabile, spiegabile e facile da riutilizzare in una pagina evento, in un sistema di iscrizione o in una API per competizioni.
Inserisca il tabellone nel flusso dell’evento
Una richiesta API automatizzata costa $0.002.
Domande tecniche
Quanti partecipanti sono necessari?
Sono richiesti almeno due nomi. Un elenco più corto restituisce un errore invalid_input.
Quanto costa una richiesta API?
Ogni richiesta API costa $0.002. L’esperienza nel browser può eseguire localmente la stessa logica deterministica.