Олимпиадный тренинг

Задача . Полёт (2024-2025, 11)


Задача

Темы:
Петя создает ПО для управления дроном. Дрон перемещается в трехмерном пространстве с заданной декартовой системой координат. Дрон умеет выполнять 6 возможных команд: вверх, вниз, вправо, влево, вперед и назад. Каждая команда перемещает дрон на 1 единицу длины в указанном направлении. Пространство не содержит никаких препятствий для перемещения дрона. Программа для дрона – это последовательность из определенного количества указанных команд. Пока дрон умеет выполнять только программы, состоящие ровно из 11 команд. Петя решил записывать программы для дрона в память в виде последовательности команд, кодируя каждую команду минимально возможным, одинаковым для всех команд количеством бит.
Вася заметил, что дрон всегда стартует из точки A и всегда заканчивает движение в точке B, смещенную на 2 единицы длины вправо, 3 единицы длины вверх и 4 единицы длины вперед. Вася сказал Пете, что тогда нет смысла выделять память исходя из необходимости хранить произвольную программу заданной длины. Он предложил перенумеровать натуральными числами все программы, которые смогут переместить дрона из точки A в точку B и сохранять в памяти номер такой программы, используя для каждого возможного номера минимально возможное, одинаковое для всех номеров количество бит. Насколько меньше бит потребуется Васе для хранения одной программы, чем предлагал Петя? В ответе укажите целое число.

time 1000 ms
memory 256 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
Комментарий учителя