时间限制: 1Sec 内存限制: 128MB 提交: 474 解决: 187
题目描述
有一个序列,序列的第一个数是 ,后面的每个数是前一个数整除 2,请输出这个序列中值为正数的项。
输入
输入一行包含一个整数 。
输出
输出一行,包含多个整数,相邻的整数之间用一个空格分隔,表示答案。
样例输入复制
20
样例输出复制
20 10 5 2 1
提示
对于 80% 的数据,1<=n<=10 **9
对于 100% 的数据,1<=n<=10**18 。
#include<bits/stdc++.h>
using namespace std;
long long n;
int main()
{
cin>>n;
while(n>0)
{
cout<<n<<" ";
n=n/2;
}
return 0;
}