有一个序列,序列的第一个数是 n,后面的每个数是前一个数整除 2,请输出这个序列中值为正数的项。
输入一行包含一个整数 n。
输出一行,包含多个整数,相邻的整数之间用一个空格分隔,表示答案。
1≤n≤10的18次方
20
20 10 5 2 1
#include#include using namespace std; typedef long long LL; int main() { LL n; cin >> n; while (n) { cout << n << ' '; n /= 2; } return 0; }
上一篇:C语言5道编程题简单介绍(二)