这个是1995的升级,主要是考虑到了不同种类的情况,即每一次移动都有可能产生三种不同的情况。
import com.sun.corba.se.spi.orbutil.fsm.Input;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {
private long count=1;
public void back(){
this.count=1;
}
public long hannota(int n){
if(n==1) {
count=3*count;
return 1;
}
else {
count=3*count;
return 2*hannota(n-1)+1;
}
}
public static void main(String[] args) {
Main fab=new Main();
Scanner Input = new Scanner(System.in);
int a=Input.nextInt();
while (a>0)
{
int n=Input.nextInt();
// int k=Input.nextInt();
fab.hannota(n);
System.out.println(fab.count);
fab.back();
a--;
}
}
}