एक पर्वत को रेखाखंडों के एक समूह के रूप में परिभाषित किया जाता है, जिसका पहला बिंदु निर्देशांक है (0,a)
जहां a > 0
, और जिसका अंतिम बिंदु समन्वय है (b,0)
, जहां b > 0
। सभी मध्यवर्ती बिंदुओं में एक y-निर्देशांक (निर्देशांक) सख्ती से अधिक से अधिक होता है। आपको x-निर्देशांक (abscissa) के आरोही क्रम में छाँटे गए पर्वत पर अंक दिए जाते हैं। ध्यान दें कि दो बिंदुओं में एक ही एक्स-समन्वय हो सकता है, जो पहाड़ के एक ऊर्ध्वाधर खंड का निर्माण करता है। यदि आपको एक ही एक्स-समन्वय के साथ दो अंक दिए जाते हैं, तो उन्हें उस क्रम में जोड़ा जाना चाहिए, जो वे दिए गए हैं। इसके अलावा, पहाड़ के क्षैतिज खंड हो सकते हैं ये क्षैतिज खंड नहीं जलाए जाते हैं, चाहे कुछ भी हो। सभी निर्देशांक nonnegative पूर्णांक हैं।
प्रश्न: पहाड़ की कुल लंबाई क्या है जो सूर्य को मानते हुए, पर्वत के दाईं ओर स्थित प्रकाश का एक अनंत ऊर्ध्वाधर विमान है? इस संख्या को गोल करने की आवश्यकता नहीं है, लेकिन अगर यह गोल है, तो कम से कम चार दशमलव स्थानों को शामिल करें। मैंने एक तस्वीर शामिल की है: यहां, जो लाइनें बोल्ड की गई हैं, वे उन खंडों का प्रतिनिधित्व करती हैं जो जलाए जाते हैं। ध्यान दें कि इनपुट में P, Q से पहले दिखाई देता है (PQ एक वर्टिकल लाइन सेगमेंट है) इसलिए पिछला बिंदु P से जुड़ा है और Q से नहीं।
आप किसी भी उचित प्रारूप में इनपुट ले सकते हैं, जैसे सूचियों की सूची, एकल सूची, एक स्ट्रिंग, आदि।
परीक्षण का मामला:
(0,3000)
(500, 3500)
(2500, 1000)
(5000,5000)
(9000,2000)
(9000,3500)
(10200,0)
Output: 6200.0000
यहां दो लिट-अप सेगमेंट हैं, जैसा कि इस चित्र में दिखाया गया है: पहले वाले की लंबाई 5000/2 = 2500 है और दूसरे की लंबाई 3700 है।
यह कोड-गोल्फ है , इसलिए बाइट्स में सबसे कम जवाब जीतता है।
(x1, y1)
और(x2,y2)
वह बिंदु जो "अवरुद्ध" है वह है(x3, y3)
। मान लें कि y2 <y3 <= y1 है। तब खंड की लंबाई है((y1 - y3)/(y1 - y2))*sqrt((x1 - x2)^2 + (y1 - y2)^2)
। यह अनिवार्य रूप से है। दूरी सूत्र, खंड के अंश जो वास्तव में प्रयोग किया जाता है से गुणा।