ほぼ無質量の猫が(x, y, z)
、速度のある点で宇宙船に落とされます(宇宙服とすべてで心配しないでください)(vx, vy, vz)
。ポイントには固定された無限に密集した惑星(体積0)があり、加速(0, 0, 0)
して距離r
を置いてオブジェクトを引き付けます1/r^2
。ニュートン重力によると、オブジェクトは時間の経過後にどこに行くのt
でしょうか?
この場合、ほとんど質量がないということは、の値を出力していることを意味しますlim (mass --> 0) <position of cat>
。質量は惑星の重力の影響を受けますが、惑星は猫の重力の影響を受けません。つまり、中心体は固定されています。
これは、コードゴルフに多少似ています:宇宙船の運命は?[浮動小数点バージョン]ですが、これは精度を測定しているため、異なります。
3秒未満で実行する必要があるシミュレーションに基づいたソリューションを実装することも、正確な値を提供するプログラムを実装することもできます(3秒未満で実行する必要があります)。以下のスコアリングの詳細を参照してください。シミュレーションを実装する場合、正確である必要はありませんが、不正確なためにスコアが低くなります。
入力:x y z vx vy vz t
、必ずしもx、y、z座標、x、y、およびz方向の速度と時間を表す整数ではありません。猫の速度が厳密にその高度での脱出速度よりも遅いことが保証されています。関数へのパラメーターを含め、どこからでも入力を取得できます。プログラムは、私のラップトップ上で3秒未満で実行する必要がありますt < 2^30
。つまり、シミュレーションを実行している場合は、それに応じてタイムステップを調整する必要があります。すべてのテストケースで3秒の制限に達することを計画している場合は、コンピューターで3秒で実行できるように、速度のゲインをより正確に/より正確に調整できる調整可能なパラメーターがあることを確認してください。
出力:x y z
時間後の位置t
。
二体問題は完全に解決できるので、理論的には完全で正しい答えを得ることができます。
スコアリング:すべてのテストケースで、エラーは出力と「真の」出力の間の距離として定義されます。真の出力は、テストケーススニペットが生成するものと定義されています。エラーが未満の場合、エラーは10^(-8)
ゼロに切り捨てられます。スコアは、100(またはそれ以上)のランダムテストケースの平均誤差です。完全に正確な答えを書いた場合、スコア0を取得する必要があります。最も低いスコアが勝ち、コードの長さによって関係が壊れます。
テストケース:
1 0 0 0 -1 0 1000000000 --> 0.83789 -0.54584 0
この場合、軌道は周期2 * piで完全に円形であるため、159154943回旋回した後、猫はおよそ(0.83789、-0.54584)になります。これは、コードがテストされるテストケースではありません。ただし、完全に正確な回答を提出する場合は、これでテストすることをお勧めします。
以下のスニペットは、ランダムな追加のテストケースを生成し、提出を判断するために使用されます。これにバグがあるかどうか教えてください:
t
それが何であれ、単位時間で与えられ、速度は同じ単位を使用します。秒単位でも時間単位でも、答えは同じです。
nearly massless cat
さて、猫の正確な質量は何ですか?0
この猫の質量の値として使用するだけですか?
t
は秒単位で与えられますか?もしそうなら、速度は1秒あたりの単位で与えられますか、それとももっと小さいものですか?