結果
| 問題 |
No.825 賢いお買い物
|
| コンテスト | |
| ユーザー |
hang_hang_cln
|
| 提出日時 | 2019-05-27 21:04:51 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 29 ms / 2,000 ms |
| コード長 | 563 bytes |
| コンパイル時間 | 163 ms |
| コンパイル使用メモリ | 12,672 KB |
| 実行使用メモリ | 11,008 KB |
| 最終ジャッジ日時 | 2024-09-17 15:34:34 |
| 合計ジャッジ時間 | 1,431 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 19 |
コンパイルメッセージ
Main.py:10: SyntaxWarning: "is" with 'int' literal. Did you mean "=="? elif coins is 0: Main.py:14: SyntaxWarning: "is" with 'int' literal. Did you mean "=="? elif a is 0:
ソースコード
A, B, C = map(int, input().split())
# 複数回の会計に分割できる
def calc(a,b,coins):
if coins <= -9:
return None
elif coins < 0:
return None if b == 0 else 1 + calc(a+9, b-1, coins+8) # 1Gに対して10G払う。
elif coins is 0:
return 0
elif a >= 11 and coins >= 10:
return 1 + calc(a-11, b+1, coins-10) # 11枚1G払ってお釣り10Gもらう
elif a is 0:
return coins * 10
else:
g1 = min(a, coins)
return g1 + calc(a-g1, b, coins-g1)
print(calc(A, B, A+B-C) or "Impossible")
# 9 17 -1
# 18 16 -1
hang_hang_cln