結果

問題 No.2812 Plus Minus Blackboard
ユーザー LyricalMaestroLyricalMaestro
提出日時 2024-10-23 01:46:40
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 250 ms / 2,000 ms
コード長 893 bytes
コンパイル時間 398 ms
コンパイル使用メモリ 82,344 KB
実行使用メモリ 105,228 KB
最終ジャッジ日時 2024-10-23 01:46:46
合計ジャッジ時間 5,192 ms
ジャッジサーバーID
(参考情報)
judge2 / judge3
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 40 ms
54,464 KB
testcase_01 AC 38 ms
54,044 KB
testcase_02 AC 37 ms
52,648 KB
testcase_03 AC 250 ms
104,068 KB
testcase_04 AC 167 ms
99,112 KB
testcase_05 AC 217 ms
105,228 KB
testcase_06 AC 104 ms
79,676 KB
testcase_07 AC 95 ms
78,120 KB
testcase_08 AC 90 ms
77,496 KB
testcase_09 AC 194 ms
103,816 KB
testcase_10 AC 88 ms
77,440 KB
testcase_11 AC 156 ms
96,192 KB
testcase_12 AC 133 ms
90,892 KB
testcase_13 AC 236 ms
104,920 KB
testcase_14 AC 114 ms
82,352 KB
testcase_15 AC 87 ms
77,192 KB
testcase_16 AC 208 ms
102,304 KB
testcase_17 AC 117 ms
83,656 KB
testcase_18 AC 106 ms
79,576 KB
testcase_19 AC 186 ms
100,148 KB
testcase_20 AC 100 ms
76,928 KB
testcase_21 AC 227 ms
105,060 KB
testcase_22 AC 206 ms
101,768 KB
testcase_23 AC 37 ms
53,760 KB
testcase_24 AC 37 ms
53,144 KB
権限があれば一括ダウンロードができます

ソースコード

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)
        elif a > 0:
            heapq.heappush(p_queue,a)
    if len(m_array) == 0 and len(p_queue) == 0:
        print("Yes")
        return    

    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