特殊相対、反対方向に移動している別の物体に対して移動する物体の速度は、以下の式によって与えられます。
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
して、上記の式を使用して、相対論的添加速度を計算し、c = 300000000
。出力は、10進数値または小数部分でなければなりません。出力は0.001
、10進値の場合は実際の値の範囲内であるか、小数部の場合は正確でなければなりません。
テストケース
フォーマット: 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