結果

問題 No.1739 Princess vs. Dragoness (& AoE)
ユーザー kohei2019kohei2019
提出日時 2023-06-12 00:12:41
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 675 bytes
コンパイル時間 271 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 125,612 KB
最終ジャッジ日時 2024-06-11 02:17:40
合計ジャッジ時間 54,718 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 36 ms
52,864 KB
testcase_01 AC 35 ms
52,864 KB
testcase_02 AC 35 ms
53,376 KB
testcase_03 WA -
testcase_04 AC 2,315 ms
125,492 KB
testcase_05 AC 2,871 ms
125,600 KB
testcase_06 WA -
testcase_07 WA -
testcase_08 AC 353 ms
103,888 KB
testcase_09 AC 486 ms
117,896 KB
testcase_10 AC 1,586 ms
96,128 KB
testcase_11 WA -
testcase_12 AC 106 ms
76,820 KB
testcase_13 WA -
testcase_14 AC 1,758 ms
112,600 KB
testcase_15 AC 1,472 ms
125,288 KB
testcase_16 AC 1,851 ms
90,304 KB
testcase_17 AC 819 ms
100,928 KB
testcase_18 AC 2,016 ms
100,504 KB
testcase_19 AC 438 ms
100,964 KB
testcase_20 WA -
testcase_21 AC 836 ms
116,696 KB
testcase_22 AC 1,380 ms
120,464 KB
testcase_23 AC 2,604 ms
124,484 KB
testcase_24 AC 2,612 ms
125,476 KB
testcase_25 AC 2,963 ms
125,612 KB
testcase_26 WA -
testcase_27 AC 2,897 ms
125,368 KB
testcase_28 WA -
testcase_29 AC 2,869 ms
124,252 KB
testcase_30 AC 2,577 ms
125,164 KB
testcase_31 WA -
testcase_32 WA -
testcase_33 AC 75 ms
76,340 KB
testcase_34 WA -
testcase_35 WA -
testcase_36 WA -
testcase_37 WA -
testcase_38 AC 77 ms
76,288 KB
testcase_39 AC 81 ms
76,584 KB
testcase_40 AC 70 ms
75,748 KB
testcase_41 AC 83 ms
76,416 KB
testcase_42 AC 77 ms
76,416 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import heapq
N,A,B,X,Y = map(int,input().split())
lsH0 = list(map(int,input().split()))

def is_ok(arg):
    lsH = [-(lsH0[i]-arg) for i in range(N)]
    heapq.heapify(lsH)
    for i in range(A):
        hp = heapq.heappop(lsH)
        v = hp + X
        heapq.heappush(lsH, v)

    vsum = 0
    for j in lsH:
        if j >= 0:
            continue
        else:
            vsum -= j

    if vsum > B*Y:
        return False
    else:
        return True
 
 
def meguru_bisect(ng, ok):
    while (abs(ok - ng) > 1):
        mid = (ok + ng) // 2
        if is_ok(mid):
            ok = mid
        else:
            ng = mid
    return ok
print(meguru_bisect(0,10**18+1))


0