結果

問題 No.3067 +10 Seconds Clock
ユーザー cologne
提出日時 2025-04-28 12:02:51
言語 PyPy3
(7.3.15)
結果
AC  
実行時間 348 ms / 2,000 ms
コード長 714 bytes
コンパイル時間 439 ms
コンパイル使用メモリ 82,688 KB
実行使用メモリ 260,452 KB
最終ジャッジ日時 2025-04-28 12:02:58
合計ジャッジ時間 6,291 ms
ジャッジサーバーID
(参考情報)
judge1 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 23
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys


def input():
    return sys.stdin.readline().strip()


def main():
    n, tt = map(int, input().split())
    (*t,) = map(int, input().split())
    k = int(input())
    (*x,) = map(int, input().split())

    lo = -1
    hi = k + 1

    def ok(x):
        x = set(x)
        cur = tt
        for i in range(n - 1):
            cur -= t[i]
            if cur <= 0:
                return False
            if i + 2 in x:
                cur += 10
        return True

    while lo + 1 != hi:
        mi = (lo + hi) // 2
        if ok(x[:mi]):
            hi = mi
        else:
            lo = mi

    if hi == k + 1:
        print(-1)
    else:
        print(hi)


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