回答
#61462 No.306 さいたま2008 - yukicoder
二分探索しようとして失敗した.
解説を見て,あー…(思考停止)ってなった.
なんというか,普通に高校数学とかを知っていれば解ける問題です.
AとBの座標が与えられるので,片方を反転して,AとBの直線を求め,y軸との切片を考えれば良いという….
高校の時に定期テストで解いたじゃんこういう問題orz
int main(){ cin.tie(0); ios::sync_with_stdio(false); cout.precision(16); int x1, y1; int x2, y2; cin >> x1 >> y1; cin >> x2 >> y2; x2 = -x2; // y - y1 = ((y2 - y1) / (x2 - x1)) * (x - x1) // y = ((y2 - y1) / (x2 - x1)) * (x - x1) + y1 // need intercept -> ((y2 - y1) / (x2 - x1)) * (-x1) + y1 cout << ((double)(y2 - y1) / (x2 - x1)) * (-x1) + y1 << endl; return 0; }
単純だけど,頭が働くかどうかが試された感じがしました.
幾何やこの類の平面グラフとか,そもそもの性質を忘れている場合が多いので,時間を見つけて高校数学,大学数学からやり直してこようかしら…