Трубопровод
(Время: 1 сек. Память: 16 Мб Сложность: 60%)
В некоторой корпорации при производстве различных химических веществ используется сложная система трубопроводов для слива отходов. При монтаже трубопровода использовались стандартные элементы, состоящие из двух задвижек, двух входов и одного выхода (рис. 1).
Такие элементы объединяются вместе, как показано на рисунке 2, где изображен трубопровод до 4 уровня. Здесь обозначение Layer – указывает на слой (уровень) задвижек.
В последующем ограничимся рассмотрением трубопровода до сорокового слоя включительно. Все задвижки в трубопроводе пронумерованы от первого до сорокового слоя. Внутри каждого слоя задвижки пронумерованы слева направо (см. рис. 2).
Напишите программу, которая по заданному порядковому номеру S начальной задвижки определяет и выводит в выходной файл номера всех тех задвижек, которые следует открыть, чтобы осуществить сброс отходов.
Входные данные
Входной файл INPUT.TXT содержит одно целое число S – номер начальной задвижки (1 ≤ S ≤ 433494435).
Выходные данные
Выходной файл OUTPUT.TXT должен содержать последовательность номеров задвижек. Последовательность должна начинаться с числа S и заканчиваться числом 1. Элементы последовательности идут в порядке убывания, разделяются пробелами и (или) символами конца строк.
Примеры
№ | INPUT.TXT | OUTPUT.TXT |
1 | 8 | 8 4 2 1 |
2 | 5 | 5 2 1 |
3 | 6 | 6 3 1 |
4 | 10 | 10 6 3 1 |
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
|