結果
問題 | No.1381 Simple Geometry 1 |
ユーザー |
![]() |
提出日時 | 2021-10-04 14:00:14 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 38 ms / 2,000 ms |
コード長 | 357 bytes |
コンパイル時間 | 181 ms |
コンパイル使用メモリ | 82,228 KB |
実行使用メモリ | 52,736 KB |
最終ジャッジ日時 | 2024-07-22 13:28:06 |
合計ジャッジ時間 | 2,364 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 29 |
ソースコード
x, y, z, w = map(int, input().split()) def is_ok(k): p = ((k+w)**2-y**2)*(k**2-z**2) return p >= x**2 ng = 0 ok = 2*x while abs(ng-ok) > 10**(-9): mid = (ng+ok)/2 if is_ok(mid): ok = mid else: ng = mid k = ok import math a = math.sqrt((k+w)**2-y**2) b = math.sqrt(k**2-z**2) ans = x-y*a/2-b*z/2-(b-y)*(a-z)/2 print(ans)