結果

問題 No.2650 [Cherry 6th Tune *] セイジャク
ユーザー abap34
提出日時 2024-02-23 22:27:56
言語 PyPy3
(7.3.15)
結果
RE  
実行時間 -
コード長 1,069 bytes
コンパイル時間 800 ms
コンパイル使用メモリ 82,520 KB
実行使用メモリ 104,660 KB
最終ジャッジ日時 2024-09-29 07:24:09
合計ジャッジ時間 9,763 ms
ジャッジサーバーID
(参考情報)
judge5 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 2
other AC * 1 RE * 30
権限があれば一括ダウンロードができます

ソースコード

diff #

import bisect
import heapq

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

    T = int(input())

    pusht = [[] for _ in range(N + 1)]
    popt = [[] for _ in range(N + 1)]

    L = []
    R = []
    for _ in range(T):
        l, r = map(int, input().split())
        L.append(l)
        R.append(r)

    for t, (l, r) in enumerate(zip(L, R)):
        left_index = bisect.bisect_left(X, l)
        right_index = bisect.bisect_right(X, r) 
        pusht[left_index].append(t + 1)
        popt[right_index].append(t + 1)


    current = [(1, 1)]
    heapq.heapify(current)

    for i in range(N):
        if popt[i]:
            for t in popt[i]:
                if len(current) == 1:
                    continue
                current.remove((-t, -t))
                heapq.heapify(current)

        if pusht[i]:
            for t in pusht[i]:
                heapq.heappush(current, (-t, -t))
             
        ans = -heapq.heappop(current)[0]
        print(ans)
        heapq.heappush(current, (-ans, -ans))



main()
0