कई अलग-अलग प्रकार के ट्रेन सेट मौजूद हैं, जो कि ब्रियो जैसे लकड़ी के पटरियों से लेकर वास्तविक ट्रेनों के पूर्णतया डिजिटल नियंत्रण के लिए उपयुक्त छोटे धातु प्रतिकृतियां हैं, लेकिन इन सभी के लिए एक ट्रैक की आवश्यकता होती है, जो आदर्श रूप से आपके कई टुकड़ों का उपयोग कर सके।
इसलिए, आपका कार्य यह निर्धारित करना है कि उपलब्ध टुकड़ों के इनपुट को देखते हुए, सभी तत्वों का उपयोग करके एक पूर्ण बंद सर्किट का निर्माण करना संभव है या नहीं, और यदि संभव हो तो अधिकतम संभव सर्किट से कितने टुकड़े छोड़ दिए जाएंगे।
चूंकि यह एक सरलीकृत ट्रेन सेट है, केवल 3 तत्व हैं: बड़ा वक्र, थोड़ा वक्र, और सीधा। ये सभी एक वर्ग ग्रिड पर आधारित हैं:
- "बिग कर्व" एक 90 डिग्री कॉर्नर है, जिसमें प्रत्येक आयाम में 2 यूनिट शामिल हैं
- "लिटिल कर्व" एक 90 डिग्री का कोना है, जो प्रत्येक दिशा में एक इकाई को कवर करता है
- "स्ट्रेट" एक सीधा तत्व है, 1 यूनिट लंबा
इसका मतलब है कि न्यूनतम सर्किट संभव 4 छोटे वक्रों से बना है - यह एक सर्कल है, त्रिज्या 1 इकाई का। विभिन्न अंडाकार बनाने के लिए सीधे तत्वों के जोड़े जोड़कर इसे बढ़ाया जा सकता है। अधिक घटता जोड़कर या वक्र के प्रकारों को मिलाकर अन्य सर्किट संभव हैं।
इस ट्रेन सेट में पटरियों को पार करने के लिए कोई जंक्शन, या विधियां शामिल नहीं हैं, इसलिए यह दो तत्वों के लिए किसी अन्य तत्व (कोई वाई संरचनाओं) के एक ही छोर से जुड़ने के लिए या एक दूसरे को पार करने के लिए मान्य नहीं है (कोई एक्स फॉर्मेशन नहीं) । इसके अतिरिक्त, यह एक ट्रेन सेट है, इसलिए कोई भी गठन जो किसी ट्रेन को पास करने की अनुमति नहीं देता है, मान्य नहीं है: उदाहरणों में 90 डिग्री कोणों पर स्ट्रैटन बैठक (हमेशा लंबवत पट्टियों के बीच एक वक्र होना चाहिए) और 90 डिग्री कोण पर बैठकें शामिल हैं (घटता प्रवाह होना चाहिए)।
आप जितना संभव हो उतने टुकड़ों का उपयोग करना चाहते हैं, वे किस प्रकार की अनदेखी कर रहे हैं, इसलिए आप हमेशा एक सर्किट का चयन करेंगे जिसमें अधिक बिट्स हों। अंत में, आपके पास केवल एक ट्रेन है, इसलिए कोई भी समाधान जिसके परिणामस्वरूप कई सर्किट अस्वीकार्य हैं। ।
इनपुट
या तो तीन पूर्णांकों की एक सरणी, सभी से अधिक या 0 के बराबर, बड़े घटता, छोटे घटता और उपलब्ध स्ट्रेट्स की संख्या के अनुरूप, या पैरामीटर आपके प्रोग्राम को उसी क्रम में पारित किया गया।
उत्पादन
जब प्रदान किए गए तत्वों के लिए अधिकतम संभव सर्किट का निर्माण किया जाता है तो टुकड़ों की संख्या के अनुरूप संख्या।
परीक्षण डेटा
Minimal circuit using big curves
Input: [4,0,0]
Output: 0
Slightly more complicated circuit
Input: [3,1,2]
Output: 0
Incomplete circuit - can't join
Input: [3,0,0]
Output: 3
Incomplete circuit - can't join
Input: [3,1,1]
Output: 5
Circuit where big curves share a centre
Input: [2,2,0]
Output: 0
Bigger circuit
Input: [2,6,4]
Output: 0
Circuit where both concave and convex curves required
Input: [8,0,0] or [0,8,0]
Output: 0
Circuit with left over bit
Input: [5,0,0] or [0,5,0]
Output: 1
टिप्पणियाँ
- 2 पट्टियाँ और थोड़ा वक्र एक बड़े वक्र के बराबर होते हैं, लेकिन अधिक टुकड़ों का उपयोग करते हैं, इसलिए पसंद किया जाता है - कभी भी ऐसी स्थिति नहीं होनी चाहिए जहां इस संयोजन को छोड़ दिया जाए, अगर सर्किट में कोई बड़ा वक्र है
- 4 छोटे वक्रों को आमतौर पर 4 स्ट्रैट्स के लिए स्वैप किया जा सकता है, लेकिन ऐसा नहीं है कि इससे सर्किट खुद को काटना होगा
- ट्रेन सेट को भी आदर्श बनाया गया है - ट्रैक तत्व दिखाए गए चौड़ाई को लेते हैं, इसलिए यह कुछ मामलों में, बिना किसी इंटरसेक्शन के एकल ग्रिड वर्ग से गुजरने के लिए मान्य है। ग्रिड केवल तत्व आयामों को परिभाषित करता है। विशेष रूप से, दो बड़े वक्रों को रखा जा सकता है ताकि उदाहरण आरेख के शीर्ष बाईं ओर ग्रिड वर्ग भी बाएं से ऊपर की ओर चल रहे एक और बड़े वक्र के नीचे दाएं वर्ग हो (चित्र के साथ एक दाएं से नीचे चल रहा है)
- एक छोटा वक्र एक बड़े वक्र (नीचे दायां ग्रिड वर्ग ऊपर) के नीचे खाली जगह में फिट हो सकता है। एक दूसरा बड़ा वक्र भी उस स्थान का उपयोग कर सकता है, एक को पार किया और एक को पहले से नीचे कर दिया
- एक छोटा वक्र एक बड़े ग्रिड के बाहर एक ही ग्रिड स्थान पर फिट नहीं हो सकता है - ज्यादातर क्योंकि इससे कनेक्ट करने का कोई तरीका नहीं है जो अवैध रूप से प्रतिच्छेद नहीं करता है


[5,0,0]या[0,5,0]होगा1। क्या वो सही है? क्या आप इस तरह के परीक्षण का मामला जोड़ सकते हैं?