Снова вынуждет вернуться к ответу на первую задачу. Как выяснилось, мое решение оказалось неоптимальным. Вот более правильное решение.
Пусть красный цвет соответствует 0, а белый – 1. Тогда, чиновник, который отвечает первым и видит цвета всех остальных, подсчитывает сумму по модулю 2 и называет получившийся цвет. С вероятностью 50% результат совпадет с его цветом. Далее, следующий чиновник, подсчитав сумму по модулю 2 всех, кто стоит перед ним, и зная ответ предыдущего, стопроцентно правильно называет свой цвет. И так по цепочке. Таким образом, действуя по этому алгоритму, стопроцентно выживут все, кроме первого (его вероятность выжить 50%).