ну, исходя из 3 участников за раунд - надо убрать одного участника из общего списка (сам с собой он не может соревноваться) и найти количество уникальных пар из оставшихся участников. На мой взгляд так получится подсчитать необходимое количество раундов.
А как в уникальную пару выбирать третьего? А если участников одного заезда будет не три, а четыре? На самом деле, мое решение через НОК даёт одновременно два результата: 1) доказательство минимальности 2) порядок построения турнирной таблицы для любых N и M хоть по сценарию, когда не требуется сравнение каждого с каждым, хоть по сценарию, когда требуется. Насчёт порядка построения в первом случае (полнота сравнений не требуется): берется одномерный массив длиной НОК (N,M) и заполняется последовательностями чисел от 1 до N. Таких последовательностей в этот массив поместится целое количество (по определению НОК). Далее берём первые M элементов этого массива - это номера участников первого заезда; вторые M элементов - номера участников второго заезда и т.д. Так как НОК длится на M, сформированные заезды будут полными (в каждом по M участников). Оценка сложности алгоритма - O(M*N) как по времени, так и по памяти. Самое сложное - найти НОК(N,M), но это на самом деле просто, зная, что НОД(N,M)*НОК(N,M) = N*M, где НОД - наибольший общий делитель. Тогда достаточно найти НОД(N,M) и разделить N*M на этот НОД. Причем НОД находится за линейное время алгоритмом Евклида.