有一个序列,序列的第一个数是 n,后面的每个数是前一个数整除 2,请输出这个序列中值为正数的项。
输入格式
输入一行包含一个整数 n。
输出格式
输出一行,包含多个整数,相邻的整数之间用一个空格分隔,表示答案。
数据范围
1≤n≤pow(10,18)
输入样例:
20
输出样例:
20 10 5 2 1
10的18的方,Java的long可以表示
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner in=new Scanner(System.in);
long n=in.nextLong();
while(n>=1) {
System.out.print(n+" ");
n=n/2;
}
}
}