Предмет: Информатика,
автор: seryogavor
Надо разбить n человек на пары для турнира х. После проведения раунда надо ещё раз разбить на пары, так чтобы игроки не играли ещё раз с друг другом и при этом все должны принимать участие в этом раунде. и так пока не пройдёт (n = 2*m) n - 1 раундов. Я потом этот алгоритм должен буду описать на Paskal.
Или доказать, что это невозможно
Ответы
Автор ответа:
0
Можно, например, разбить так.
Первый тур:
1 - 2m
2 - 2m-1
3 - 2m-2
...
m - m+1
Второй тур:
1 - 2m-1
2m - 2m-2
2 - 2m-3
...
m-2 - m+1
m-1 - m
K-й тур:
1 - 2m-K+1
2m-K+2 - 2m-K
2m-K+3 - 2m-K-1
...
m-K+1 - m-K
(Всякий раз все команды, кроме первой, сдвигаются "по кругу")
Первый тур:
1 - 2m
2 - 2m-1
3 - 2m-2
...
m - m+1
Второй тур:
1 - 2m-1
2m - 2m-2
2 - 2m-3
...
m-2 - m+1
m-1 - m
K-й тур:
1 - 2m-K+1
2m-K+2 - 2m-K
2m-K+3 - 2m-K-1
...
m-K+1 - m-K
(Всякий раз все команды, кроме первой, сдвигаются "по кругу")
Похожие вопросы
Предмет: География,
автор: NazarKlass11
Предмет: Биология,
автор: sofiakruk54
Предмет: Алгебра,
автор: mistergamer898
Предмет: Математика,
автор: Брутян
Предмет: Литература,
автор: Polovnikova