Вопросы яндекса на career day санкт-петербург?
первая задача решается элементарно :)
1. выбираем одного ведущего (не обязательно среди студентов)
2. Ведущий загадывает случайное число в уме (достаточно большое, сравнимое со обычным средним баллом * N) и говорит его первому студенту 'на ушко'
3. Каждый последующий студент прибавляет к этому числу свой балл и сообщает результат другому
…
4. по окончании последний студент так же шопотом говорит свою сумму ведущему
5. ведущий вычитает свое число из результата и делит его на N

т.е. никто не видит всей картины, а значит никаких вычислений провести не сможет (даже если кто то услышит случайно чью-то сумму, это ничего не даст).
По второй — правильных вариантов очереди будет столько же, сколько правильных скобочных последовательностей, а именно fib(50) (где fib(1) = 1, fib(2) = 2, fib(i) = fib(i-1) + fib(i-2)).
Доказывается по индукции.

Всего вариантов очереди — число сочетаний, 100! / (50!)^2.

Ответ — fib(50) / 100! * (50!)^2
В числах получается что-то очень маленькое, типа 2e-19