यह चुनौती फ्लिपिंग पेनकेक्स से संबंधित है ।
आपने पैनकेक सॉर्टिंग के बारे में सुना होगा , जहां पैनकेक के ढेर को आकार में क्रमबद्ध करके स्टैक में स्पैटुला डाला जाता है और स्पैचुला के ऊपर सभी पेनकेक्स को फ्लिप किया जाता है, जब तक कि प्लेटों पर पेनकेक्स सबसे छोटे सॉर्ट किए जाते हैं। जले हुए पैनकेक की समस्या थोड़ी अलग है। सभी पेनकेक्स में अब एक पक्ष होता है जिसे जलाया जाता है, और छँटाई के पूरा होने पर प्रत्येक पैनकेक के जला पक्ष को प्लेट का सामना करना पड़ता है।
उदाहरण के लिए, निम्नलिखित स्टैक दिया गया है (बाईं ओर पैनकेक का आकार। 0
अर्थ बर्न-साइड डाउन और 1
अर्थ बर्न-साइड राइट-अप):
1 0
3 1
2 1
आप पाने के लिए पूरे स्टैक को फ्लिप कर सकते हैं 20 30 11
, प्राप्त करने के लिए शीर्ष दो को 31 21 11
फ्लिप कर सकते हैं और प्राप्त करने के लिए पूरे स्टैक को फिर से फ्लिप कर सकते हैं 10 20 30
, बर्न पैनकेक के एक सॉर्ट किए गए स्टैक। इस क्रम में, फ्लिप 3, फ्लिप 2, फ्लिप 3, को इस रूप में दर्शाया जा सकता है 3 2 3
।
चुनौती
- पेनकेक्स के आकारों की एक सरणी (जरूरी नहीं कि अद्वितीय) और उनकी अभिविन्यास को देखते हुए, किसी भी वैध जले हुए पैनकेक सॉर्टिंग अनुक्रम का उत्पादन किया जाता है, अर्थात्, फ्लिप्स का एक क्रम जो पेनकेक्स के ढेर को सबसे छोटे से सबसे बड़े से जलाए जाने वाले पक्षों के साथ क्रमबद्ध करता है।
- इनपुट और आउटपुट विभाजकों के साथ किसी भी प्रकार का प्रारूप हो सकता है, लेकिन कृपया निर्दिष्ट करें कि आप किन प्रारूपों का उपयोग करते हैं और बताते हैं कि आपके इनपुट प्रारूप का कौन सा अंत स्टैक (टीओएस) के शीर्ष पर है।
- शून्य पैनकेक फ़्लिप करने की अनुमति है।
- इनपुट / आउटपुट में विभाजकों को मिलाने की अनुमति है।
परीक्षण के मामलों
निम्नलिखित सभी परीक्षण मामलों के लिए, इनपुट एक सूची है और आउटपुट एक अंतरिक्ष-पृथक स्ट्रिंग है, और टीओएस बाईं ओर है।
[[1, 0], [3, 1], [2, 1]]
"3 2 3"
[[5, 1], [3, 0], [4, 1], [2, 1], [1, 0]]
"5 3 4 1 3 2 1"
[[5, 1], [3, 0], [3, 0], [1, 1]]
"4 3 2 3"
हमेशा की तरह, अगर कुछ भी अस्पष्ट या गलत है, तो कृपया मुझे टिप्पणियों में बताएं। गुड लक और गुड गोल्फिंग!