結果
問題 |
No.2259 Gas Station
|
ユーザー |
|
提出日時 | 2023-04-21 16:09:18 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 39 ms / 2,000 ms |
コード長 | 801 bytes |
コンパイル時間 | 117 ms |
コンパイル使用メモリ | 12,544 KB |
実行使用メモリ | 11,648 KB |
最終ジャッジ日時 | 2024-11-06 10:51:50 |
合計ジャッジ時間 | 1,993 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 21 |
ソースコード
from typing import Tuple def validate_input(L: int, R: int, C: int) -> Tuple[int, int, int]: """ 引数のバリデーションを行う関数 """ assert 1 <= L <= R, f"Invalid L: {L}" assert L <= R <= 10**9, f"Invalid R: {R}" assert 1 <= C <= 10**9, f"Invalid C: {C}" return L, R, C def min_change(L: int, R: int, C: int) -> int: """ お釣りの最小値を求める関数 """ L, R, C = validate_input(L, R, C) min_change = 1000 for x in range(L, R + 1): cost = x * C change = 1000 - cost % 1000 if cost % 1000 == 0: return 0 if change < min_change: min_change = change return min_change if min_change != 1000 else 0 L, R, C = map(int, input().split()) print(min_change(L, R, C))