結果
| 問題 | No.846 メダル |
| コンテスト | |
| ユーザー |
学ぶマン
|
| 提出日時 | 2025-11-10 21:09:09 |
| 言語 | PyPy3 (7.3.15) |
| 結果 |
AC
|
| 実行時間 | 47 ms / 2,000 ms |
| コード長 | 695 bytes |
| コンパイル時間 | 263 ms |
| コンパイル使用メモリ | 82,712 KB |
| 実行使用メモリ | 54,068 KB |
| 最終ジャッジ日時 | 2025-11-10 21:09:12 |
| 合計ジャッジ時間 | 2,401 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 4 |
| other | AC * 22 |
ソースコード
def kiriage(a, b): return (a+b-1)//b
P, Q, R = map(int, input().split())
A, B, C = map(int, input().split())
# N/P = A
# N/Q = A + B
# N/R = A + B + C
# / は切り上げ
# (A-1)*P < N <= A*P
# (A+B-1)*Q < N <= (A+B)*Q
# (A+B+C-1)*R < N <= (A+B+C)*R
condition1 = [(A - 1)*P + 1, A*P]
condition2 = [ (A+B-1)*Q + 1, (A+B)*Q]
condition3 = [(A+B+C-1)*R+1 ,(A+B+C)*R]
LRs = []
LRs.append(condition1)
LRs.append(condition2)
LRs.append(condition3)
while len(LRs) >= 2:
l1, r1 = LRs.pop()
l2, r2 = LRs.pop()
if l2 < l1:
l1, r1, l2, r2 = l2, r2, l1, r1
if l2 <= r1:
LRs.append((l2, min(r1, r2)))
else:
exit(print(-1))
ans = LRs[0]
print(*ans)
学ぶマン