हम एक रूबिक क्यूब का प्रतिनिधित्व निम्नानुसार नेट के रूप में कर सकते हैं (हल होने पर):
WWW
WWW
WWW
GGGRRRBBBOOO
GGGRRRBBBOOO
GGGRRRBBBOOO
YYY
YYY
YYY
प्रत्येक अक्षर इसी रंग का प्रतिनिधित्व करता है ( W
सफेद, G
हरा आदि)
यह दिखाया गया है कि बिल्कुल (~ क्विंटल) विभिन्न क्रमपरिवर्तन हैं जो रूबिक के क्यूब में हो सकते हैं।
आपका कार्य और बीच पूर्णांक और ऊपर दिखाए गए तरीके से संबंधित क्रमचय का उत्पादन करना है। आप चुन सकते हैं कि कैसे क्रमपरिवर्तन का आदेश दिया गया है, लेकिन आपके द्वारा उपयोग किए जाने वाले एल्गोरिदम को एक अद्वितीय और सही बनाने के लिए दिखाया जाना चाहिए, प्रत्येक संभावित इनपुट के लिए क्रमपरिवर्तन।
अमान्य क्रमांकन नियम
इस पेज से लिया गया
आरंभ करने के लिए, प्रत्येक 3x3 चेहरे का केंद्र समान रहना चाहिए, क्योंकि रूबिक के क्यूब पर केंद्र वर्ग को घुमाया नहीं जा सकता है। पूरे क्यूब को घुमाया जा सकता है, जहां एक चेहरा दिखता है, लेकिन यह क्यूब के जाल को प्रभावित नहीं करता है।
यदि हम कहते हैं कि प्रत्येक क्रमपरिवर्तन में एक समानता है, तो उस क्रमपरिवर्तन तक पहुँचने के लिए स्वैप की संख्या के आधार पर, हम कह सकते हैं
प्रत्येक कोने के टुकड़े में तीन संभावित झुकाव हैं। यह सही ढंग से उन्मुख हो सकता है (0), दक्षिणावर्त (1) या वामावर्त (2)। कोने के झुकाव का योग हमेशा 3 से विभाज्य रहता है
रूबिक के क्यूब पर प्रत्येक कानूनी घुमाव हमेशा किनारों की एक समान संख्या में फ़्लिप करता है, इसलिए केवल एक टुकड़ा उन्मुख गलत नहीं हो सकता है।
सभी कोनों और किनारों के क्रमपरिवर्तन को ध्यान में रखते हुए, समग्र समता का अर्थ यह होना चाहिए कि प्रत्येक कानूनी कदम हमेशा सम संख्या के स्वैप के बराबर प्रदर्शन करता है (अभिविन्यास को अनदेखा करते हुए)
उदाहरण के लिए निम्नलिखित तीन नेट अमान्य आउटपुट हैं:
WWW
WWW
WWW
GGGWWWBBBOOO
GGGRRRBBBOOO
GGGRRRBBBOOO
YYY
YYY
YYY
(Too many whites/not enough reds)
WRW
WRW
WRW
GGGRWRBBBOOO
GGGWRRBBBOOO
YYGRWROOOBBB
YYY
GGY
YYY
(There are two red/green center squares and no white/yellow center squares.
In all valid permutations, the center squares are all different colours)
WWW
WWW
WWW
GGGRRRBBBOOO
GGGRRRBBBOOO
GGGRRRBBOYOO
YYY
YYY
YYB
(The yellow/orange/blue corner is rotated into an impossible permutation)
नियम
- आपको यह साबित करना होगा कि आपकी इच्छानुसार, कि एल्गोरिथ्म मान्य है। जब तक आप अपने एल्गोरिथ्म की वैधता को साबित नहीं करते हैं, तब तक आपको हर एक क्रमपरिवर्तन की गणना करने की आवश्यकता नहीं है।
- जब तक आपका कार्यक्रम और बीच सभी पूर्णांकों के लिए सैद्धांतिक रूप से काम करेगा , तब तक आपको वास्तव में अपनी भाषा को संभालने से अधिक इनपुट में लेने की व्यावहारिकता के बारे में चिंता करने की ज़रूरत नहीं है।
- इसका मतलब यह है कि, यदि आपकी भाषा / प्रकार / जो भी केवल तक की संख्या को संभाल सकते हैं, यदि इनपुट से अधिक है , तो प्रोग्राम स्वयं विफल हो सकता है , लेकिन आपके द्वारा उपयोग किया जाने वाला एल्गोरिदम नहीं चाहिए।2 53 - 1
- उदाहरण के लिए, यदि आपका जावास्क्रिप्ट प्रोग्राम शुद्ध रूप से इनपुट के लिए विफल रहता है, क्योंकि यह संख्या सीमा से बाहर है, यह ठीक है। हालाँकि, यदि आपके एल्गोरिथ्म को मनमाने आकार के पूर्णांक के साथ एक भाषा में पोर्ट किया गया था और उस इनपुट के लिए विफल रहा, तो आपका प्रोग्राम मान्य नहीं होगा।
- आपको अपने उत्तर में किसी प्रकार की वैधता का प्रमाण शामिल करना चाहिए । यह प्रमाण सभी संभावनाओं को मानने के अलावा, किसी भी स्वीकृत प्रमाण पद्धति में वैधता साबित कर सकता है।
- यदि आप चाहें, तो आप एक वैकल्पिक इनपुट पद्धति का उपयोग करने का विकल्प चुन सकते हैं:
- इनपुट बाउंड है
- प्रत्येक इनपुट एक अद्वितीय आउटपुट से मेल खाती है
- आप स्पष्ट रूप से इनपुट प्रारूप की व्याख्या करते हैं और यह कैसे प्रत्येक आउटपुट से मेल खाता है
- आप ASCII वर्णों का उपयोग करने के लिए उपयोग किए गए वर्णों को बदल सकते हैं, 33 (
!
) और 126 (~
) के बजाय, के बीचWGRBOY
- आप अपनी इच्छानुसार किसी भी तरीके से उत्पादन कर सकते हैं, इसलिए जब तक यह एक घन का एक स्पष्ट प्रतिनिधित्व करता है, जहां सभी 6 चेहरे दिखाए जा सकते हैं, जिसमें कोई भी वैध घन जाल, एक पंक्तिबद्ध स्ट्रिंग या एक 3D प्रतिपादन शामिल है। यदि आप किसी विशिष्ट प्रारूप के बारे में अनिश्चित हैं, तो टिप्पणियों में पूछने में संकोच न करें।
यह एक कोड-गोल्फ है इसलिए बाइट्स में, प्रत्येक भाषा में सबसे छोटा कोड जीत जाता है।
उदाहरण मान्य आउटपुट
YYY
YYY
YYY
GGGRRRBBBOOO
GGGRRRBBBOOO
GGGRRRBBBOOO
WWW
WWW
WWW
(The `W` and `Y` faces have been swapped)
ZZZ
+++
+}}
+[[}77ZZ7bbb
bb[}[[7}}+Z7
bb[}++[}}+Z7
7bb
[7Z
[7Z
(To start with, the colours have been mapped W -> +, G -> b, R -> [, B -> }, O -> Z and Y -> 7.
Then, the moves L, R, U and F' have been applied, in that order.
Notice that each centre square is different, and corresponds to the same colour as in the mapping)