समस्या
Compute the Euclidean distance between (x1, y1) and (x2, y2): the square root of (x2 − x1)² + (y2 − y1)².
Implement distance(x1, y1, x2, y2).
Input
x1: First point x. y1: First point y. x2: Second point x. y2: Second point y.
Output
Return the distance.
सीमाएँ
-1,000,000 ≤ each coordinate ≤ 1,000,000
उदाहरण
इनपुट:
x1 = 0.0
x2 = 3.0
y1 = 0.0
y2 = 4.0
अपेक्षित आउटपुट:
expected = 5.0
इनपुट:
double x1 = 0.0;
double x2 = 3.0;
double y1 = 0.0;
double y2 = 4.0;
अपेक्षित आउटपुट:
double expected = 5.0;
इनपुट:
double x1 = 0.0;
double x2 = 3.0;
double y1 = 0.0;
double y2 = 4.0;
अपेक्षित आउटपुट:
double expected = 5.0;
व्याख्या
√(3² + 4²) = √25 = 5.
इनपुट:
x1 = 1.0
x2 = 1.0
y1 = 1.0
y2 = 1.0
अपेक्षित आउटपुट:
expected = 0.0
इनपुट:
double x1 = 1.0;
double x2 = 1.0;
double y1 = 1.0;
double y2 = 1.0;
अपेक्षित आउटपुट:
double expected = 0.0;
इनपुट:
double x1 = 1.0;
double x2 = 1.0;
double y1 = 1.0;
double y2 = 1.0;
अपेक्षित आउटपुट:
double expected = 0.0;
व्याख्या
Both points are the same, so the distance is 0.
कैसे हल करें
पहले खुद कोशिश करें, फिर एक-एक करके संकेत खोलें।
संकेत 1
दोनों points के बीच horizontal और vertical differences निकालो।
संकेत 2
दोनों differences को square करो, जोड़ो, फिर total का square root लो।
संकेत 3
Negative coordinates हों तो भी ध्यान रखो, distance formula वैसे ही काम करता है।
अपेक्षित जटिलता
समय O(1), अतिरिक्त स्थान O(1)
संदर्भ
यह चुनौती CodeUtility के लिए अनुकूलित की गई है। ऊपर दिए गए स्टेटमेंट और सीमाओं का पालन करें।