結果

問題 No.2812 Plus Minus Blackboard
ユーザー LyricalMaestroLyricalMaestro
提出日時 2024-10-23 01:44:21
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 799 bytes
コンパイル時間 325 ms
コンパイル使用メモリ 82,596 KB
実行使用メモリ 105,240 KB
最終ジャッジ日時 2024-10-23 01:44:27
合計ジャッジ時間 6,209 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 38 ms
52,396 KB
testcase_01 AC 38 ms
54,224 KB
testcase_02 AC 38 ms
53,216 KB
testcase_03 AC 227 ms
104,028 KB
testcase_04 AC 170 ms
98,968 KB
testcase_05 AC 249 ms
105,240 KB
testcase_06 AC 106 ms
79,416 KB
testcase_07 AC 97 ms
78,388 KB
testcase_08 AC 92 ms
77,424 KB
testcase_09 AC 200 ms
103,916 KB
testcase_10 AC 89 ms
76,892 KB
testcase_11 AC 162 ms
96,040 KB
testcase_12 AC 138 ms
90,580 KB
testcase_13 AC 255 ms
104,656 KB
testcase_14 AC 114 ms
82,492 KB
testcase_15 AC 91 ms
76,980 KB
testcase_16 AC 211 ms
102,552 KB
testcase_17 AC 118 ms
83,340 KB
testcase_18 AC 107 ms
79,776 KB
testcase_19 AC 185 ms
100,512 KB
testcase_20 AC 90 ms
76,684 KB
testcase_21 AC 239 ms
104,728 KB
testcase_22 AC 213 ms
102,168 KB
testcase_23 AC 39 ms
53,416 KB
testcase_24 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

## https://yukicoder.me/problems/no/2812

import heapq

def main():
    N = int(input())
    A = list(map(int, input().split()))

    A.sort()
    m_array = []
    p_queue = []
    for a in A:
        if a < 0:
            m_array.append(a)
        else:
            heapq.heappush(p_queue,a)

    m_index = len(m_array) - 1

    while m_index >= 0:
        m = m_array[m_index]
        while m < 0 and len(p_queue) > 0:
            a = heapq.heappop(p_queue)
            m += a
        if m >= 0:
            heapq.heappush(p_queue, m)
            m_index -= 1
        else:
            break
    
    if m_index == -1 and len(p_queue) == 1:
        print("Yes")
    elif m_index == 0 and len(p_queue) == 0:
        print("Yes")
    else:
        print("No")


if __name__ == "__main__":
    main()
0