# № 31502 Демоверсия 2027(Уровень: Базовый)
#
# На вход алгоритма подаётся натуральное число N. Алгоритм строит по нему новое число R следующим образом.
# 1. Строится двоичная запись числа N.
# 2. Далее эта запись обрабатывается по следующему правилу:
# а) если число N чётное, то к этой записи справа и слева дописываются по две единицы;
# б) если число N нечётное, то в конец двоичной записи (справа) дописываются два нуля, а в начало (слева) дописывается единица.
# Полученная таким образом запись (в ней на три или четыре разряда больше, чем в записи исходного числа N)
# является двоичной записью искомого числа R.
# 3. Результат переводится в десятичную систему и выводится на экран.
# Например, для исходного числа 13(10) = 1101(2) результатом является число 1110100(2) = 116(10), а для исходного
# числа 610 = 1102 это число 11110112 = 12310.
# Укажите наименьшее число R, превышающее 95, которое может быть результатом работы данного алгоритма.
# В ответе запишите это число в десятичной системе счисления.
mas=[]
for n in range(10000):
n = bin(n)[2::]
if n[-1] == "0":
n = '11' + n + '11'
else:
n = '1' + n + '00'
r = int(n,2)
if r>95:
mas.append(r)
print(min(mas))
print(sorted(mas))