#A1281. 整数的拆分2

整数的拆分2

题目背景

像1,2,4,8,……这样的数,叫做2的整数次幂,因为2^0=1,2^1=2,2^2=4,2^4=8,……。

任何正整数,都可以用若干个二的整数次幂数的和来表示,而且每个数只出现1次。

例如:11=1+2+8,50=2+16+32


题目描述

将一个正整数x,拆分成若干个二的整数次幂数。按从小到大的顺序输出。

输入格式

一个正整数x(x≤10^9)。

输出格式

按从小到大的顺序输出组成x的所有二的整数次幂,相邻两个数之间用一个空格分隔。


输入/输出样例

50
2 16 32

说明/提示

时间1000ms,内存256MiB