में विशेष सापेक्षता , एक और उद्देश्य यह है कि विपरीत दिशा में आगे बढ़ रहा है करने के लिए एक चलती वस्तु रिश्तेदार के वेग सूत्र द्वारा दिया जाता है:
s = ( v + u ) / ( 1 + v * u / c ^ 2)
इस सूत्र में, और ऑब्जेक्ट्स के वेगों के परिमाण हैं, और प्रकाश की गति है (जो लगभग , इसके लिए पर्याप्त निकट सन्निकटन है चुनौती)।
उदाहरण के लिए, यदि एक वस्तु आगे बढ़ रही थी v = 50,000 m/s
, और दूसरी वस्तु चल रही थी u = 60,000 m/s
, तो प्रत्येक वस्तु का वेग दूसरे के सापेक्ष होगा s = 110,000 m/s
। यह वही है जो आप गैलिलियन सापेक्षता के तहत उम्मीद करेंगे (जहां वेग बस जोड़ते हैं)। हालांकि, अगर v = 50,000,000 m/s
और u = 60,000,000 m/s
, सापेक्ष वेग लगभग होगा 106,451,613 m/s
, जो 110,000,000 m/s
गैलिलियन सापेक्षता द्वारा भविष्यवाणी की तुलना में काफी अलग है ।
चुनौती
दो पूर्णांकों v
और u
इस तरह 0 <= v,u < c
के दिए गए, उपर्युक्त सूत्र का उपयोग करके, सापेक्ष additive वेग की गणना करें c = 300000000
। आउटपुट या तो दशमलव मान या कम अंश होना चाहिए। आउटपुट को 0.001
दशमलव मान के लिए वास्तविक मान या अंश के लिए सटीक होना चाहिए ।
परीक्षण के मामलों
प्रारूप: v, u -> exact fraction (float approximation)
50000, 60000 -> 3300000000000/30000001 (109999.99633333346)
50000000, 60000000 -> 3300000000/31 (106451612.90322581)
20, 30 -> 7500000000000000/150000000000001 (49.999999999999666)
0, 20051 -> 20051 (20051.0)
299999999, 299999999 -> 53999999820000000000000000/179999999400000001 (300000000.0)
20000, 2000000 -> 4545000000000/2250001 (2019999.1022226212)
2000000, 2000000 -> 90000000000/22501 (3999822.2301231055)
1, 500000 -> 90000180000000000/180000000001 (500000.9999972222)
1, 50000000 -> 90000001800000000/1800000001 (50000000.972222224)
200000000, 100000000 -> 2700000000/11 (245454545.45454547)
s/velocity/Velocity of an Unladen Swallow/g