トピックポータル
問題解決のアイデア:
まず第一に、誰もが車を行い、そして二人は最短総時間を作るために、同じ時刻に到着します。
そこで、我々は、エンドポイントBである点BにC点Aを開くには、車にオフに来て、そして同時に車を回すが、DがラインBに直面している点に来ていると、E点で交わる出発点を設定し、最終的なB車とB、そしてAが同時に到達します。
その後、我々の半分のポイントC、誤差が一定値未満になるまで。
ACコード:
1の#include <iostreamの> 2の#include <cstdioを> 3の#include <cmath> 4 5 使用 名前空間STD。 6つの 7 ダブルS、B、である、端、P、T1、T2、S1、S2、TA、TB。 8 9 INT メイン(){ 10 CIN >> S >> A >> B。 11 =である0 。 12 端=のS。 13 行う{ 14 、pは=(+する端)/ 2.0 。 15 = P / TA B。 16 TB =(P - TA *)/(A + B)。 17 T1 = TA +(S - P)/ 。 18 T2 = TB + TA +(S - (+ TB TA)* A)/ B。 19 であれば(T1 < T2) 20 端= P。 21 他 22 =ことP。 23 } 24 ながら(ファブ(T1 - T2)> 1E- 8 )。 25 のprintf(" %の0.6lf " 、T1)。 26 リターン 0 ; 27 }