結果
| 問題 | 
                            No.306 さいたま2008
                             | 
                    
| コンテスト | |
| ユーザー | 
                             tjake
                         | 
                    
| 提出日時 | 2015-12-04 00:13:52 | 
| 言語 | Python2  (2.7.18)  | 
                    
| 結果 | 
                             
                                WA
                                 
                             
                            
                         | 
                    
| 実行時間 | - | 
| コード長 | 578 bytes | 
| コンパイル時間 | 337 ms | 
| コンパイル使用メモリ | 7,068 KB | 
| 実行使用メモリ | 6,948 KB | 
| 最終ジャッジ日時 | 2024-09-14 08:35:08 | 
| 合計ジャッジ時間 | 1,481 ms | 
| 
                            ジャッジサーバーID (参考情報)  | 
                        judge2 / judge4 | 
(要ログイン)
| ファイルパターン | 結果 | 
|---|---|
| other | WA * 23 | 
ソースコード
from math import sqrt
inputs = lambda:map(int, raw_input().split())
xa, ya = inputs()
xb, yb = inputs()
if ya > yb:
    xa, ya, xb, yb = xb, yb, xa, ya
xa2 = xa**2*10**30
xb2 = xb**2*10**30
ya *= 10**15
yb *= 10**15
def calc(yp):
    return sqrt(xa2+(ya-yp)**2) + sqrt(xb2+(yb-yp)**2)
left = ya; right = yb
while 1:
    print left, right
    lm = (2*left+right)/3
    rm = (left+2*right)/3
    lc = calc(lm)
    rc = calc(rm)
    if lc < rc:
        if rm==right: break
        right = rm
    else:
        if lm==left: break
        left = lm
print "%.08f" % (left/10.**15)
            
            
            
        
            
tjake