結果
| 問題 |
No.176 2種類の切手
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2015-04-03 00:15:23 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
RE
|
| 実行時間 | - |
| コード長 | 632 bytes |
| コンパイル時間 | 164 ms |
| コンパイル使用メモリ | 12,288 KB |
| 実行使用メモリ | 11,136 KB |
| 最終ジャッジ日時 | 2024-10-08 01:58:49 |
| 合計ジャッジ時間 | 2,398 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | RE * 3 |
| other | RE * 29 |
ソースコード
from fractions import gcd
A, B, T = map(int, input().split())
def solve(A, B, T):
if A >= T:
return A
if B >= T:
caseA = A * (T // A) + (A if T % A else 0)
return min(caseA, B)
if T % A == 0 or T % B == 0:
return T
g = gcd(A, B)
lcm = A * B // g
residue = T - (T // lcm) * lcm
# target = T + g // 2
maxB = residue // B + 1
minAB = maxB * B
for b in range(0, minAB, B):
r = residue - b
if r % A == 0:
return T
AB = b + (r // A) * A + A
if AB < minAB:
minAB = AB
return minAB
print(solve(A, B, T))