結果

問題 No.2099 [Cherry Alpha B] Time Machine
ユーザー gew1fw
提出日時 2025-06-12 21:15:54
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 1,674 bytes
コンパイル時間 186 ms
コンパイル使用メモリ 82,016 KB
実行使用メモリ 60,152 KB
最終ジャッジ日時 2025-06-12 21:16:33
合計ジャッジ時間 5,480 ms
ジャッジサーバーID
(参考情報)
judge4 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 52 WA * 20
権限があれば一括ダウンロードができます

ソースコード

diff #

def main():
    import sys
    input = sys.stdin.read().split()
    T = int(input[0])
    X = int(input[1])
    A = int(input[2])
    Y = int(input[3])
    B = int(input[4])
    
    a_max = 200000  # Adjust this value if needed
    min_cost = float('inf')
    
    for a in range(0, a_max + 1):
        if A == 0:
            aa = 0
        else:
            aa = a * A
        if aa > T:
            needed = aa - T
            if B == 0:
                b_min = 0
            else:
                b_min = (needed + B - 1) // B
        else:
            b_min = 0
        
        w = T - aa + b_min * B
        if w < 0:
            continue
        
        cost = a * X + b_min * Y + w
        if cost < min_cost:
            min_cost = cost
    
    # Additional cases for T negative to ensure coverage
    if T < 0:
        a = 0
        aa = 0
        if aa > T:
            needed = aa - T
            if B == 0:
                b_min = 0
            else:
                b_min = (needed + B - 1) // B
        else:
            b_min = 0
        
        w = T - aa + b_min * B
        if w >= 0:
            cost = a * X + b_min * Y + w
            if cost < min_cost:
                min_cost = cost
        
        a = 1
        aa = A
        if aa > T:
            needed = aa - T
            if B == 0:
                b_min = 0
            else:
                b_min = (needed + B - 1) // B
        else:
            b_min = 0
        
        w = T - aa + b_min * B
        if w >= 0:
            cost = a * X + b_min * Y + w
            if cost < min_cost:
                min_cost = cost
    
    print(min_cost)

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