Cho 3 cọc đĩa A, B, C, cọc A nằm bên trái, cọc B nằm giữa, cọc C nằm bên phải. Ban đầu cọc A có 𝑛 đĩa và các đĩa được sắp thứ tự đĩa lớn ở dưới và đĩa nhỏ ở trên, cọc B và cọc C không có đĩa nào (các đĩa được đánh thứ tự từ 1 đến 𝑛, đĩa có thứ tự nhỏ hơn có kích thước nhỏ hơn). Mỗi lần bạn được di chuyển 1 đĩa từ cọc này sang cọc khác theo quy luật: ➢ Chỉ được đặt 1 đĩa lên cọc chưa có đĩa nào hoặc lên cọc có đĩa nằm trên cùng lớn hơn nó. ➢ Các đĩa chỉ có thể di chuyển sang cọc kề nó (1 trong 4 cách sau: A sang B, B sang A, B sang C, C sang B). Lưu ý: khi di chuyển vẫn phải thoả điều kiện trên. Yêu cầu: Hãy tìm cách di chuyển ít lần nhất để di chuyển toàn bộ 𝑛 đĩa sang cọc C. Dữ liệu vào: Cho trong file văn bản hanoi2.inp gồm 1 số nguyên dương 𝑛. Kết quả: Ghi ra file văn bản hanoi2.out như sau: ➢ Dòng đầu ghi số lần thực hiện các phép di chuyển. ➢ Các dòng tiếp theo, mỗi dòng ghi 1 phép di chuyển có dạng XY cho biết di chuyển 1 đĩa từ cọc X sang cọc Y (ở đây X, Y là 1 trong 3 ký tự ‘A’, ‘B’, ‘C’). Ví dụ: hanoi2.inp hanoi2.out 1 2 AB BC 2 8 AB BC AB CB BA BC AB BC Ràng buộc: ➢ 50% số điểm ứng với các test có 𝑛 ≤ 5 ➢ 50% số điểm ứng với các test có 𝑛 ≤ 12