एक बिंदु के लिए यात्रा झूठ बोल कल्पना कीजिए एक मील दूर क्षैतिज और बी अपनी मौजूदा स्थिति से मील दूर खड़ी। या दूसरे शब्दों में, (0, 0)
बिंदु से यात्रा (a, b)
। यात्रा समाप्त करने के लिए आपको कितनी दूर की आवश्यकता होगी? यह एक सीधा सवाल लगता है, लेकिन इसका जवाब इस बात पर निर्भर करता है कि आप किससे पूछते हैं। यदि आप एक कौवा हैं, और आप कौवा मक्खियों के रूप में यात्रा कर सकते हैं , तो यात्रा की गई दूरी सिर्फ यूक्लिडियन दूरी है (a, b)
। ये है
sqrt(a^2 + b^2)
लेकिन अगर आप सिर्फ एक उबाऊ इंसान हैं, तो आप वास्तव में उस रास्ते पर नहीं चलना चाहते हैं, इसलिए आपको एक टैक्सी लेनी होगी। अधिकांश टैक्सी आपके गंतव्य की ओर एक सीधी रेखा में नहीं चलती हैं क्योंकि वे आमतौर पर सड़कों पर रहने की कोशिश करती हैं। तो आपके द्वारा यात्रा की जाने वाली वास्तविक दूरी ऊर्ध्वाधर दूरी और क्षैतिज दूरी का योग है। या सूत्र है:
abs(a) + abs(b)
इसे टेक्सीकैब डिस्टेंस कहा जाता है । यह तस्वीर अच्छी तरह से दोनों के बीच के अंतर को प्रदर्शित करती है:
यात्रा करने के लिए (6, 6)
, एक कौवा हरे रंग की लाइन पर उड़ सकता है, और यह 6 * sqrt(2)
लगभग 8.49 की दूरी तय करता है । एक टैक्सीवाला लाल, नीले या पीले रंग के रास्ते ले सकता है, लेकिन वे सभी 12 ले लेंगे।
यह असली सवाल है जो मैं पूछ रहा हूं। यदि एक कौवा और एक टैक्सीवाला दोनों बिंदु से चले जाते हैं (0, 0)
, और बिंदु की यात्रा करते हैं (a, b)
, तो टैक्सीकैब का रास्ता कितना लंबा है? या, अधिक गणित शब्दजाल में,
एक दो आयामी वेक्टर को देखते हुए, वेक्टर के मानदंड 2 और वेक्टर के मानदंड 1 के बीच का अंतर निर्धारित करें।
इस प्रश्न का उत्तर देने के लिए आपको सबसे कम संभव प्रोग्राम या फ़ंक्शन लिखना होगा। आप 'ए' और 'बी' को दो अलग-अलग इनपुट के रूप में, या दो आइटम टपल के रूप में ले सकते हैं। आप किसी भी उचित प्रारूप में इनपुट और आउटपुट ले सकते हैं। यदि अंतर एक गैर पूर्णांक है, तो आपको कम से कम दो दशमलव स्थानों पर सटीक होना चाहिए।
आप हमेशा मान सकते हैं कि 'ए' और 'बी' पूर्णांक होंगे, और वे दोनों 0. नहीं होंगे (हालांकि यह संभव है कि उनमें से कोई एक शून्य होगा)
हमेशा की तरह, मानक खामियों को लागू करते हैं और अपने कार्यक्रम को यथासंभव कम करने की कोशिश करते हैं, जो बाइट्स में गिने जाते हैं।
मैं किसी भी उत्तर को बढ़ाऊंगा जो कोड को कैसे काम करता है, इसकी व्याख्या प्रस्तुत करता है, और बाइट्स को बचाने के लिए उपयोग किए जाने वाले किसी भी कूल ट्रिक्स को प्रदर्शित करता है।
आपके कोड को जांचने के लिए यहां कुछ उदाहरण दिए गए हैं:
#input #output
3, 4 2
-3, 4 2
-3, -4 2
6, 6 3.51
42, 0 0
10, 10 5.86
3, 3 1.76
मज़ा गोल्फ है! :)
10,10
को 5.86 होना चाहिए, क्योंकि यह बाहर आता है 5.85786...
और आपने इसके नीचे एक चक्कर लगाया ।