Я пытаюсь запрограммировать игру для нескольких игроков на Java.
Мне нужно создать список всех комбинаций и сохранить их в массиве.
Если вошли 2 игрокав начале игры используются следующие комбинации: p1, p2 и p2, p1 (позиции важны)
, а если в игру вошли 3 игрока, это следующие комбинации: p1, p2, p3;р1, р3, р2;р2, р1, р3;р2, р3, р1;p3, p1, p2 и p3, p2, p1
На самом деле мне нужен избыточный массив: если вошли 3 игрока, мне нужно заранее комбинации 3 И комбинации каждой возможной пары p1,р2, р3;р1, р3, р2;р2, р1, р3;р2, р3, р1;p3, p1, p2 и p3, p2, p1 и p1, p2 и p2, p1 и p1, p3 и p3, p1 и p2, p3 и p3, p2)
Многие игроки (отредактировано: до 8игроки) могут одновременно войти в один и тот же раунд игры.(ИЗМЕНЕНО: существует до 32 групп, но это не важно, потому что группы независимы)
Существует ли быстрый, короткий и простой способ создать этот массив комбинаций для n игроков?
Предусмотрено и приемлемо рекурсивное решение.
Большое спасибо
PS
Моя постоянная идея состоит в том, чтобы разделить группу на 2, выбранную пару и остальную частьигроки.Разделенные пары выбираются с помощью 2 циклов FOR, а остальные - с помощью третьего.Если есть 2 игрока, нет «отдыха». Если есть 3 игрока, 2 FOR выберут позиции пары, а остальные получат остальные. Затем остальные упорядочиваются с использованием той же процедуры разделения.стать реальным? как? это будет эффективно? еще раз спасибо.