結果
問題 | No.2128 Round up!! |
ユーザー |
👑 |
提出日時 | 2022-11-18 21:53:20 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 300 ms / 2,000 ms |
コード長 | 569 bytes |
コンパイル時間 | 179 ms |
コンパイル使用メモリ | 82,140 KB |
実行使用メモリ | 78,164 KB |
最終ジャッジ日時 | 2024-09-20 02:16:25 |
合計ジャッジ時間 | 3,945 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 12 |
ソースコード
from math import gcd MOD = 998244353 def solve(x, a, b): l = a // gcd(a, b) * b ma = (x + l - 1) // l * l if ma == x: return 1 d = ma - x - 1 aa = d // a bb = d // b a_ = (x + a) // a * a b_ = (x + b) // b * b ret = 2 + min(aa, bb) * 2 if aa == bb: pass elif a < b: if a_ < b_ and x % a != 0: ret += 1 else: if b_ < a_ and x % b != 0: ret += 1 return ret for _ in range(int(input())): ans = solve(*map(int, input().split())) print(ans % MOD)