15
ย้อนกลับอัลกอริทึม Cube ของรูบิค
เมื่อใดก็ตามที่คุณขยับลูกบาศก์รูบิคก็จะมีท่าเดินถอยหลังซึ่งจะทำการยกเลิกท่าแรก ด้วยเหตุนี้อัลกอริธึมทุกชุด (ชุดการเคลื่อนไหว) จึงมีอัลกอริทึมแบบย้อนกลับซึ่งจะยกเลิกอัลกอริทึมแรก เป้าหมายของความท้าทายนี้คือการค้นหาสิ่งที่ตรงกันข้ามของอัลกอริทึมที่กำหนด รายละเอียด: อินพุตประกอบด้วยอาร์เรย์ของการเคลื่อนไหวแต่ละรายการ การย้ายแต่ละครั้งเป็นสตริงที่มีความยาว 1 หรือ 2 แน่นอนคุณสามารถใช้รูปแบบการป้อนข้อมูลใดก็ได้ที่มีความหมายมากที่สุดในภาษาของคุณ การย้ายแต่ละครั้งประกอบด้วยโครงสร้างXหรือX'หรือX2ซึ่งXเป็นตัวอักษรตัวพิมพ์ใหญ่หรือตัวพิมพ์เล็ก ที่จะย้อนกลับเพียงแทนที่ด้วยX X'ในทำนองเดียวกันจะกลายเป็นX' ในทางกลับกันไม่ได้รับการเปลี่ยนแปลงXX2 เมื่อต้องการสร้างผลลัพธ์ให้ย้อนการย้ายแต่ละครั้งจากนั้นย้อนกลับอาร์เรย์ ตัวอย่าง (สตริงคั่นด้วยช่องว่าง): R => R' D U' => U D' S T A C K => K' C' A' T' S' A2 B2 => B2 A2 เกณฑ์การให้คะแนน: นี่คือโค้ดกอล์ฟดังนั้นจำนวนไบต์ที่น้อยที่สุดจะเป็นผู้ชนะ ไม่อนุญาตช่องโหว่มาตรฐาน