注意:输入值为2^n(n:0~31)的结果都为No number can be output !
import java.util.Scanner;
public class Main{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
while(n-->0){
int m = sc.nextInt();
boolean isFirst = true;
boolean noNum = true;
while(m>2){
if(m%2==0){
m /= 2;
continue;
}
noNum = false;
if (isFirst) {
System.out.print(m);
m = m*3+1;
isFirst = false;
continue;
}
System.out.print(" "+m);
m = m*3+1;
}
if (noNum) {
System.out.println("No number can be output !");
continue;
}
System.out.println();
}
sc.close();
}
}