У меня есть два варианта как организовать эту жеребьевку.

Вариант 1, который мне не нравится. Это же предлагают Артём и Tirk.

Нужно будет жеребьевкой определить какие команды в какую зону пойдут.
Например, положить в мешок красный, желтый и синий шары и вытащить первых два.
Например, первый шар - красный, второй шар - желтый.
Это будет означать, что красные команды во втором туре будут ловить в желтых секторах. Остальное автоматом. Желтые команды пойдут в синие сектора, синие - в красные.

Дальше три мешка (как в 3-ем туре) и каждая команда тянет сектор из мешка своего цвета.

Вариант 2, более справедливый, но более сложный.

Оргкомитету придётся на каждом шаге жеребьевки следить за тем, чтобы оставшимся командам все время в мешке хватало секторов нужного цвета.
И если на текущем шаге жеребьевки есть риск нарушить это соответствие, вводить ограничение. Например, - "Сейчас красная команда можете вытащить только синий сектор!".

Приведу пример.
Представим, что сейчас идёт вторая половина жеребьевки. Условно, 25-ая очередь.
Ещё не прошли жеребьевку 4 синих команды, а в мешке осталось 2 красных и 2 желтых сектора.
Сейчас по очереди жребий будет тащить красная команда. В этот момент ведущий должен объявить - "Сейчас красная команда может вытащить только синий сектор!"
Понятно, почему. Если сейчас красной команде отдать желтый сектор, то оставшимся 4 синим командам секторов нужного цвета в мешке не останется.

Проблема здесь в том, что за этим соответствием придётся следить постоянно. Посчитать это в голове сложно, либо придётся жеребиться целый день.
Потребуется программка, которая будет подсказывать ведущему, какие ограничения и на каком шаге нужно будет вводить ...