汉诺塔问题源自印度一个古老的传说,印度教的“创造之神”梵天创造世界时做了 3 根金刚石柱,其中的一根柱子上按照从小到大的顺序摞着 64 个黄金圆盘。梵天命令一个叫婆罗门的门徒将所有的圆盘移动到另一个柱子上,移动过程中必须遵守以下规则:
1.每次只能移动柱子最顶端的一个圆盘;
2.每个柱子上,小圆盘永远要位于大圆盘之上;
输入 一个整数 n 代表 汉诺塔层数
返回一个 整数 代表 操作次数
import java.util.Scanner;
public class Main {
static int sum = 0;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println(num(sc.nextInt()));
}
public static int num(int n) {
if(n==1) return 1;
if(n==2) return 3;
else{
sum += Math.pow(2,n-1)+num(n-1);
}
return sum;
}
}