結果

問題 No.1015 おつりは要らないです
ユーザー ryo_n
提出日時 2020-04-03 21:35:15
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
WA  
実行時間 -
コード長 1,910 bytes
コンパイル時間 181 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 21,784 KB
最終ジャッジ日時 2024-07-03 01:35:37
合計ジャッジ時間 4,230 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 14 WA * 19
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys

sys.setrecursionlimit(10 ** 8)

input = sys.stdin.readline


def main():
    N, X, Y, Z = [int(x) for x in input().split()]
    A = [int(x) for x in input().split()]

    for a in A:
        if a < 1000:
            if X > 0:
                X -= 1
            else:
                if Y > 0:
                    Y -= 1
                else:
                    if Z > 0:
                        Z -= 1
                    else:
                        print("No")
                        break
        elif a < 5000:
            if Y > 0:
                Y -= 1
            else:
                if Z > 0:
                    Z -= 1
                else:
                    if X >= -(-(a + 1) // 1000):
                        X -= -(-(a + 1) // 1000)
                    else:
                        print("No")
                        break
        elif a < 10000:
            if Z > 0:
                Z -= 1
            else:
                if Y >= -(-(a + 1) // 5000):
                    Y -= -(-(a + 1) // 5000)
                else:
                    a -= 5000 * Y
                    Y = 0
                    if X >= -(-(a + 1) // 1000):
                        X -= -(-(a + 1) // 1000)
                    else:
                        print("No")
                        break
        else:
            if Z >= -(-(a + 1) // 10000):
                Z -= -(-(a + 1) // 10000)
            else:
                a -= Z * 10000
                Z = 0
                if Y >= -(-(a + 1) // 5000):
                    Y -= -(-(a + 1) // 5000)
                else:
                    a -= 5000 * Y
                    Y = 0
                    if X >= -(-(a + 1) // 1000):
                        X -= -(-(a + 1) // 1000)
                    else:
                        print("No")
                        break

    else:
        print("Yes")


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