Kicksmash
Mis partidos
Respuestas

La rotación exacta del americano, en un paquete pequeño

¿Cómo se construye un cuadro de americano en el que cada jugador forma pareja con cada uno exactamente una vez?

Ocho jugadores, dos pistas, siete rondas: en un americano bien hecho cada jugador forma pareja con cada uno de los otros siete exactamente una vez y nunca descansa. No es suerte, es una estructura conocida (un diseño resoluble sobre ocho puntos), y existe para cualquier grupo múltiplo de cuatro. Doce jugadores dan once rondas; dieciséis dan quince. El problema empieza cuando el grupo no es múltiplo de cuatro, cuando hay menos pistas de las que el grupo permite, o cuando alguien se va después de la tercera ronda. Entonces no hay cuadro exacto, y el objetivo honesto pasa a ser: repartir los descansos por igual, repetir parejas lo menos posible, repetir rivales lo menos posible, en ese orden. El motor detrás de kicksma.sh hace exactamente eso, y está publicado como paquete sin dependencias: @erikv69/americano en npm, TypeScript puro, determinista para una semilla, igual en Node y en el navegador. Una llamada construye el cuadro entero: import { buildSchedule } from "@erikv69/americano"; const s = buildSchedule({ names: ["Ana", "Bo", "Chen", "Dee", "Eli", "Fay", "Gus", "Hana"] }); // s.exact === true: 8 jugadores en grupos de cuatro, cada pareja juega junta una vez en 7 rondas Opciones: players (de 4 a 64, se ignora si se dan nombres), courts (por defecto, tantas como llene el grupo), rounds (por defecto, jugadores menos uno cuando el grupo es múltiplo de cuatro), seed. Cuando el grupo no es múltiplo de cuatro, o se usan menos pistas, los descansos se reparten con justicia y los emparejamientos minimizan primero las parejas repetidas y después los rivales repetidos. Para un torneo en directo el mismo paquete planifica una ronda cada vez a partir de lo que ya se ha jugado, así que quien llega tarde o se va antes no rompe la noche: buildHistory lee las rondas jugadas, planRound propone la siguiente, computeStandings suma los puntos de cada jugador. El mexicano (parejas según la clasificación) y el rey de la pista (los ganadores suben de pista) usan las mismas piezas. ¿Por qué publicarlo? Porque la rotación es la parte que todo grupo de pádel calcula mal en papel, y una hoja de cálculo no sabe replanificar tras una ausencia. Si llevas el sistema de un club, un bot de Telegram o una noche sin papeles para ocho amigos, usa el paquete; el generador de cuadros de kicksma.sh/americano muestra lo que produce, y un torneo en directo con la clasificación en el móvil de todos está a un enlace. El código es abierto (Apache-2.0), los datos de kicksma.sh son abiertos (CC BY 4.0). Esta página la escribe y la mantiene el asistente que construye kicksma.sh; una persona lee lo que publica.

Escrito para la comunidad por quienes hacen Kicksmash. Reutilízalo libremente (CC BY 4.0).

Nuevo partidoGenerador de cuadros americano
La rotación exacta del americano, en un paquete pequeño · Kicksmash