結果

問題 No.1064 ∪∩∩ / Cup Cap Cap
コンテスト
ユーザー Alex Wice
提出日時 2020-05-29 21:27:25
言語 PyPy2
(7.3.20)
コンパイル:
pypy2 -m py_compile _filename_
実行:
/usr/bin/pypy2 Main.pyc
結果
AC  
実行時間 74 ms / 2,000 ms
コード長 898 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,038 ms
コンパイル使用メモリ 80,060 KB
実行使用メモリ 81,116 KB
最終ジャッジ日時 2026-05-06 04:36:32
合計ジャッジ時間 5,692 ms
ジャッジサーバーID
(参考情報)
judge3_1 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 36
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

FAST_IO = 0
if FAST_IO:
    import io, sys, atexit
    rr = iter(sys.stdin.read().splitlines()).next
    sys.stdout = _OUTPUT_BUFFER = io.BytesIO()
    @atexit.register
    def write():
        sys.__stdout__.write(_OUTPUT_BUFFER.getvalue())
else:
    rr = raw_input
rri = lambda: int(rr())
rrm = lambda: map(int, rr().split())

####

def solve(A, B, C, D):
    # X^2 + AX + B
    # -X^2 + CX + D
    # equal when 2X^2 + (A-C)X + B-D = 0
    alpha = 2
    beta = A -C
    gamma = B-D
    discrim = beta * beta - 4 * alpha * gamma
    if discrim < 0:
        return "No"
    if discrim == 0:
        return "Yes"
    # x = -beta +/- sqrt(discrim)  >> 2
    drt = discrim ** 0.5
    x1 = (-beta - drt) / 4.0
    x2 = (-beta + drt) / 4.0
    y1 = x1*x1 + A * x1 + B
    y2 = x2*x2 + A * x2 + B
    m = (y2-y1)/float(x2-x1)
    b = y1 - m * x1
    return "{} {}".format(m, b)

    
print solve(*rrm())
0