Представление числа в виде степеней двойки

Вам дано одно целое число n. Ваша задача — определить и вывести список различных степеней двойки, сумма которых равна заданному числу n. Список необходимо вывести в порядке возрастания.

Входные данные

В первой строке находится одно целое число n (1 ≤ n ≤ ).

Выходные данные

Выведите степени двойки, сумма которых равна n, разделяя их пробелом. Числа должны идти в порядке возрастания.

Примеры

Ввод
Вывод
11
1 2 8
30
2 4 8 16
 

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue