結果

問題 No.1381 Simple Geometry 1
ユーザー MitarushiMitarushi
提出日時 2020-12-26 20:43:40
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
AC  
実行時間 31 ms / 2,000 ms
コード長 361 bytes
コンパイル時間 77 ms
コンパイル使用メモリ 12,544 KB
実行使用メモリ 10,880 KB
最終ジャッジ日時 2024-07-03 12:25:03
合計ジャッジ時間 1,877 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 29
権限があれば一括ダウンロードができます

ソースコード

diff #

x, y, z, w = map(int, input().split())

ok_ad = y
ng_ad = x / z
while abs(ok_ad - ng_ad) > 1e-9:
    ad = (ok_ad + ng_ad) / 2
    cd = x / ad
    bp = (y**2 + cd**2) ** 0.5
    bq = (z**2 + ad**2) ** 0.5

    if bp > bq + w:
        ok_ad = ad
    else:
        ng_ad = ad

ad = ok_ad
cd = x / ad

bpq = x - (y * cd + z * ad + (ad-y) * (cd - z)) / 2
print(bpq)
0