結果

問題 No.2009 Drunkers' Contest
ユーザー Akijin_007
提出日時 2022-07-15 22:49:39
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 665 bytes
コンパイル時間 198 ms
コンパイル使用メモリ 82,176 KB
実行使用メモリ 135,944 KB
最終ジャッジ日時 2024-06-27 19:50:10
合計ジャッジ時間 10,380 ms
ジャッジサーバーID
(参考情報)
judge5 / judge2
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 19 WA * 35
権限があれば一括ダウンロードができます

ソースコード

diff #

#int(input())
#map(int, input().split())
#list(map(int, input().split()))

N = int(input())
A = list(map(int, input().split()))
B = list(map(int, input().split()))

ans = 0
x = 0


def time(x, a, b):
    return a / (1 + x) + b * (1 + x)

def sake(a, b):
    return max(0, (a/b)**0.5-1)

ans = 0

c = []
sa = sum(A)
sb = sum(B)

a = 0
b = 0
k = 0

u = [0] * N

for i in range(N):
    t = sake(sa, sb)
    a += A[i]
    b += B[i]
    nt = sake(a, b)
    if nt <= t:
        for j in range(k, i+1):
            u[j] = nt
        sa -= a
        sb -= b
        a = 0
        b = 0
        k = i+1

for i in range(N):
    ans += time(u[i], A[i], B[i])

print(ans)





0