{"code":"magic","name":"MAGIC","description":"Kế tục thành công của trò chơi với khối lập phương thần bí, ngài Rubik sáng tạo ra dạng phẳng của trò chơi này gọi là trò chơi các ô vuông thần bí. Đây là một bảng gồm 8 ô vuông bằng nhau. Trong bài này chúng ta xét bảng trong đó mỗi ô vuông có một màu khác nhau. Các mầu được ký hiệu bởi 8 số nguyên dương đầu tiên. Trạng thái của bảng được cho bởi dãy ký hiệu màu của các ô được viết lần lượt theo chiều kim đồng hồ bắt đầu từ ô ở góc trái trên và kết thúc tại ô ở góc trái dưới. Ví dụ, trạng thái của bảng trong hình 1 được cho bởi dãy $(1,2,3,4,5,6,7,8)$. Trạng thái này được gọi là trạng thái khởi đầu.\r\n\r\nCó thể dùng 3 phép biến đổi cơ bản đối với bảng có tên là A,B,C:\r\n\r\n- A: Đổi chỗ dòng trên và dòng dưới.\r\n- B: Thực hiện một hoán vị vòng quanh sang phải.\r\n- C: Quay theo chiều kim đồng hồ 4 ô giữa.\r\n\r\nBiết rằng từ trạng thái khởi đầu luôn có thể chuyển về một trạng thái bất kỳ bằng cách dùng các phép biến đổi cơ bản nói trên.\r\n\r\nTác động của 3 phép biến đổi được mô tả trong hình 2, với giả thiết trước khi thực hiện một phép biến đổi bất kỳ bảng đều đang ở trạng thái khởi đầu.\r\n\r\n    Hình 1:        Hình 2:\r\n    \r\n    1 2 3 4 -----> 8 7 6 5\r\n    8 7 6 5   A    1 2 3 4\r\n    \r\n            -----> 4 1 2 3\r\n              B    5 8 7 6\r\n    \r\n            -----> 1 7 2 4\r\n              C    8 6 3 5\r\n\r\nBạn phải viết chương trình tính số phép biến đổi cơ bản ít nhất để chuyển bảng từ trạng thái khởi đầu trong hình 1 về một trạng thái đích cho trước.\r\n\r\n<h4>Input</h4>\r\n\r\n- Chứa 8 số nguyên dương trong dòng đầu tiên mô tả trạng thái đích.\r\n\r\n<h4>Output</h4>\r\n\r\n- Số phép biến đổi ít nhất. \r\n\r\n<h4>Example</h4>\r\n\r\n!!! question \"Test 1\"\r\n\r\n    ???+ \"Input\"\r\n\r\n        ```sample\r\n        2 6 8 4 5 7 3 1\r\n        ```\r\n\r\n    ???+ success \"Output\"\r\n\r\n        ```sample\r\n        7\r\n        ```","points":400.0,"partial":true,"time_limit":1.0,"memory_limit":1048576,"short_circuit":false,"allowed_languages":[3,4,34,36,37,5,6,11,12,14,28,2,38,39,9,18,17,29,23,27,35,25,26,10,7,19,32,1,8,15,16,24,20,33,13,41,21,40],"is_public":true,"is_manually_managed":false,"permissions":{"can_edit":false}}