Новогодний контест

для друзей Андрея

Решения задач

Эта страницы содержит авторские идеи решений задач Новогоднего контеста, который прошёл 1 января 2026 года. Если вы ещё не решали задачи, то советую сначала порешать их (даже если не участвовали в самом контесте), и только потом читать разборы. Для этого зарегистрируйтесь на главной 2026.andgein.ru. Там же можно прочитать, что вообще такое этот наш Новогодний контест.

Несмотря на то что здесь нет готовых программ, ниже вы найдёте содержимое уровней и идеи решений для всех задач, а значит, огромное количество спойлеров. Будьте аккуратны!

Внимание! На этой странице есть ответы ко всем задачам. Пожалуйста, если вы уже посмотрели ответ, не отправляйте его от своего имени на проверку. Дорешивать задачи можно и нужно, но не путём копирования ответов с этой страницы :-)

Перейти к разбору конкретной задачи:

  1. Uneval
  2. Быки и коровы
  3. Брейнфак
  4. Лего раз, Лего два
  5. PNG всмятку

1. Uneval

В этой задаче надо было составить арифметическое выражение заданной длины (или короче), значение которого равно заданному целому числу. В выражении при этом было нельзя использовать определённые символы — например, некоторые цифры и символ «+». Заданное целое число, ограничение на длину и набор запрещённых символов менялись от уровня к уровню: на первом уровне, к примеру, нужно было получить 2026 из выражения не длиннее 7 символов, не используя цифры 2, 0 и 6.

Правильность ответа проверялась с помощью питоновской функции eval(), в которую были добавлены ограничения: нельзя было импортировать модули, вызывать функции и обращаться к атрибутам.

Развернуть спойлеры

2. Быки и коровы

В этой задаче нужно было отгадать последовательность чисел, загаданную в игре «Быки и коровы», если известны все попытки отгадать её и количество быков/коров в каждой попытке.

Если возможных вариантов несколько, то в качестве небольшого усложнения надо было найти лексикографически минимальный.

Развернуть спойлеры

3. Брейнфак

В этой задаче надо было написать достаточно короткую программу на известнейшем эзотерическом языке программирования брейнфак. Программа должна выводить одну строчку, но строчка эта должна зависеть от того (и только от того!), что подали программе на вход. Например, при вводе строки «what» программа должна вывести «contest», а при вводе «where» — «2026.andgein.ru».

Развернуть спойлеры

4. Лего

В задаче надо было всего лишь распознать и сосчитать лего-человечков на таких вот картинках:

Развернуть спойлеры

5. PNG всмятку

PNG-файл разрезали на кусочки равного размера (например, по 4713 байтов), а кусочки перемешали. Восстановите порядок кусочков и посмотрите, что изображено на картинке.

Развернуть спойлеры

Внимание, спойлеры!

Пожалуйста, не отправляйте увиденный ответ от своего имени.
Если вы хотите дорешивать задачи, нажмите на крестик и не смотрите ответы.