// HannoiTower
  public class HanoiTower{
    //编写一个main方法
    public static void main(String[]args){
    Tower tower = new Tower();
    tower.move(3,'A','B','C');
  }
}
class Tower {

  // 方法
  // num 表示要移动的个数, a,b,c分别表示A塔B塔C塔
  public void move(int num,char a ,char b ,char c){
    // 如果有多个盘,可以看成两个,最下面的和上面的所有盘
    // (1)先移动上面所有的盘到b ,借助c
    // (2)把最下面的盘移动到c
    // (3)把b上的所有盘移动到cxing
    //如果只有一个盘
    if(num == 1){
      System.out.println(a + "->" + c);
    }else{
      // (1)把上面的所有盘移动到b盘 借助c
      move((num - 1),a,c,b);
      //(2)把最下面的盘移动到c
      System.out.println(a +"->" + c);
      //(3)把上面的盘移动到c借助a
      move((num - 1),b,a,c);
    }
  }
}