अंतराल की एक सूची को देखते हुए, उनमें से संघ का प्रदर्शन करें, और ओवरलैप को कम करें। इसका मतलब है, अतिव्यापी भागों को कम कर दिया जाता है। ( [a, b] U [c, d] = [a, d]यदि b > c) सभी अंतरालों में सभी को एक मान लें [a, b]। इनपुट अंतराल की सूची के एक समारोह के रूप में लागू -> आउटपुट अंतराल की सूची। सबसे छोटा कोड जीतता है। आप किसी भी मौजूदा पुस्तकालयों का उपयोग नहीं कर सकते।
स्पष्टीकरण:
- खुले और बंद अंतराल प्रतिष्ठित नहीं हैं।
- वास्तविक संख्याओं के लिए अंतराल, पूर्णांक नहीं। (
[2, 3], [4, 5] -> [2, 3], [4, 5]) - आउटपुट अंतराल को सॉर्ट करने की आवश्यकता नहीं है
- आदेश अगर इनपुट से कोई फर्क नहीं पड़ता
- अवैध इनपुट केवल
[a, b]जहां हैंb >= a, इसका इनपुट अंतराल के क्रम और इनपुट अंतराल की संख्या से कोई लेना-देना नहीं है। - आपको अपरिभाषित व्यवहारों पर त्रुटि संदेश दिखाने की आवश्यकता नहीं है
उदाहरण (संख्या रेखाओं के साथ)
[2, 4], [7, 9] --> [2, 4], [7, 9]
234
789
-> 234 789
[1, 5], [2, 10] --> [1, 10] (overlapping [2, 5] reduced)
12345
234567890
-> 1234567890
[2, 4], [3, 6], [8, 9] -> [2, 6], [8, 9]
234
3456
89
-> 23456 89
[4, 2], [2, 2] -> (undefined behavior: against the assumption)