Elebrimir / API_tostons_laravel

API CRUD per al projecte de 2nDAW
MIT License
2 stars 0 forks source link

Desarrollar Algoritmo Emparejamientos Torneo #7

Open Elebrimir opened 7 months ago

Elebrimir commented 7 months ago

Diseñar un algoritmo que empareje a los jugadores utilizando esas cuatro métricas en orden de prioridad

1- Preparación de datos:

## 1a - Ordenar jugadores por puntos en el torneo: - Ordena la lista de jugadores de acuerdo a la cantidad de puntos que han acumulado en el torneo. Los jugadores con más puntos deben aparecer primero. ## 1b - Emparejar jugadores por puntos en el torneo: - Empareja a los dos primeros jugadores de la lista (los que tienen más puntos). Continúa emparejando a los siguientes dos jugadores con más puntos disponibles, y así sucesivamente, hasta que todos los jugadores estén emparejados o no haya más jugadores disponibles para emparejar. Registra los emparejamientos realizados para que no se vuelvan a enfrentar los mismos jugadores. ## 1c - Si hay jugadores sobrantes: - Si queda un número impar de jugadores, el jugador sobrante puede descansar o emparejarse con otro jugador que esté en una posición similar (con el siguiente menor número de puntos, si es posible). ## 1d - Si todos los jugadores están emparejados: - Ahora, si todos los jugadores están emparejados, puedes detenerte aquí.

2 - En caso de empate en puntos en el torneo:

## 2a - Emparejar jugadores por puntos del rival: Para los jugadores que tienen el mismo número de puntos en el torneo, ordena sus emparejamientos según la cantidad de puntos que hayan obtenido sus rivales. Registra los emparejamientos realizados para que no se vuelvan a enfrentar los mismos jugadores. ## 2b - Emparejar jugadores por diferencia de goles: - Si todavía hay empates, considera la diferencia de goles como criterio para emparejar a los jugadores. Registra los emparejamientos realizados para que no se vuelvan a enfrentar los mismos jugadores. ## 2c - Emparejar jugadores por diferencia de bajas: Finalmente, si aún hay empates, utiliza la diferencia de bajas como último criterio de desempate. Registra los emparejamientos realizados para que no se vuelvan a enfrentar los mismos jugadores.