जब भी आप रुबिक के क्यूब पर कोई मूव करते हैं, तो एक रिवर्स मूव होता है जो पहले मूव को अनडू करता है। इस वजह से, प्रत्येक एल्गोरिथ्म (चाल का सेट) में एक रिवर्स एल्गोरिथ्म होता है जो पहले एल्गोरिथ्म को खोल देता है।
इस चुनौती का लक्ष्य किसी दिए गए एल्गोरिदम का उलटा पता लगाना है।
विशिष्टता:
इनपुट में व्यक्तिगत चाल की एक सरणी होती है। प्रत्येक चाल 1 या 2 लंबाई की एक स्ट्रिंग है। बेशक, आप अपनी भाषा में जो भी इनपुट प्रारूप बनाते हैं, उसका उपयोग कर सकते हैं। प्रत्येक चाल में संरचना X
या X'
या X2
, जहां X
एक अपरकेस या लोअरकेस अक्षर होता है।
रिवर्स करने के लिए X
, बस इसे बदलें X'
। वैसे ही, X'
बन जाता है X
। X2
दूसरी ओर परिवर्तन नहीं होता है।
आउटपुट बनाने के लिए, प्रत्येक चाल को उल्टा करें, और फिर सरणी को उल्टा करें।
उदाहरण (रिक्त स्थान द्वारा अलग किए गए तार):
R
=> R'
D U'
=> U D'
S T A C K
=> K' C' A' T' S'
A2 B2
=> B2 A2
स्कोरिंग:
यह कोड-गोल्फ है, इसलिए सबसे कम मात्रा में बाइट्स जीतते हैं। मानक खामियों की अनुमति नहीं है।
X3
या X1
चुनौती के लिए एक अच्छा जोड़ रहा होगा।
D2R2
टेस्ट केस के रूप में होना चाहिए था ...
R2
->R2'
याB
->B3
अनुमति है?