K : 帅气的拆分

Progress Bar

时间限制:1 Sec 内存限制:128 MiB
提交:20 答案正确:5

提交


题目描述

学长和学姐正在琢磨一道有趣的题,一个正整数可以拆成其他若干个正整数的和,如1=1,3=1+2,15=1+2+3+4+5 等。对于正整数 n 的一种特定拆分,我们称它为“帅气的”,当且仅当在这种拆分下,n 被分解为了若干个不同的 2 的正整数次幂。
例如:
10=8+2=2^3+2^1,是一个帅气的拆分;
但 15=8+4+2+1=2^3+2^2+2^1+2^0,不是一个帅气的拆分,因为 1 不是 2 的正整数幂; 

输入

输入只有一行,一个正整数 n(n<10000000),代表需要判断的数。 

输出

如果这个数的所有拆分中,存在帅气的拆分。那么,你需要从大到小输出这个拆分中的每一个数,相邻两个数之间用一个空格隔开。可以证明,在规定了拆分数字的顺序后,该拆分方案是唯一的。若不存在帅气的拆分,输出“-1”(不包含双引号)。

样例输入

复制
6

样例输出

复制
4 2

提示


			

来源