import java.util.ArrayList;
public class HanoiTop {
private static ArrayList<int[]> list;
public int[][] solution(int n) {
list = new ArrayList<>();
hanoi(n, 1, 3, 2);
int[][] answer = new int[list.size()][2];
for (int i = 0; i < answer.length; i++) {
answer[i][0] = list.get(i)[0];
answer[i][1] = list.get(i)[1];
}
return answer;
}
private void hanoi(int n, int from, int to, int via) {
int[] arr = { from, to };
if (n == 1) {
list.add(arr);
return;
}
hanoi(n - 1, from, via, to);
list.add(arr);
hanoi(n - 1, via, to, from);
}
}
https://velog.io/@hyeon930/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%ED%95%98%EB%85%B8%EC%9D%B4%EC%9D%98-%ED%83%91-Java 참고