Utilizando el método de rotación con un jugador fijo en la respuesta de Ross Millikan o en http://en.wikipedia.org/wiki/Round-robin_tournament#Scheduling_algorithm Creo que podemos escribir una función explícita para generar estos emparejamientos.
Empecé probando el caso más pequeño de $8$ equipos. Considere la siguiente configuración inicial:
7 6 5 4
0 1 2 3
Equipo de retención $7$ fijos y girando todos los demás en el sentido de las agujas del reloj, nos encontramos con la siguiente lista de emparejamientos:
Round number (r)
0 1 2 3 4 5 6
-------------------
0| 7 2 4 6 1 3 5
1| 6 7 3 5 0 2 4
2| 5 0 7 4 6 1 3
Team 3| 4 6 1 7 5 0 2
(t) 4| 3 5 0 2 7 6 1
5| 2 4 6 1 3 7 0
6| 1 3 5 0 2 4 7
7| 0 1 2 3 4 5 6
El patrón es evidente. Equipo $7$ El adversario del presidente es sencillamente $r$ . Para todos los demás, la ronda $0$ oponente es $7-t$ y en las siguientes rondas el oponente incrementa en $2$ cada vez (con la excepción de la ronda que por ese patrón tendría un equipo que se juega a sí mismo, durante la cual el equipo juega al equipo $7$ en su lugar).
La función es:
$$f(t, r, n) = \left\{ \begin{array}{lr} n - 1 & : t = r\\ r & : t = n - 1\\ (2*r - t)\bmod{(n-1)} : \hspace{10 mm} t\neq r\hspace{4 mm} \And \hspace{4 mm} t\neq n - 1\\ \end{array} \right.$$
donde $t$ es el número del equipo, $r$ es un número redondo, y $n$ es el número de equipos. La función está definida para los enteros positivos pares $n$ , entero no negativo $t$ donde $t<n$ y un número entero no negativo $r$ donde $r<n-1$ .