結果
問題 |
No.2125 Inverse Sum
|
ユーザー |
![]() |
提出日時 | 2022-11-18 21:50:20 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 755 bytes |
コンパイル時間 | 261 ms |
コンパイル使用メモリ | 81,920 KB |
実行使用メモリ | 59,520 KB |
最終ジャッジ日時 | 2024-09-20 02:13:21 |
合計ジャッジ時間 | 2,424 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 18 WA * 12 |
ソースコード
from math import gcd,ceil,sqrt p,q = map(int,input().split()) g = gcd(p,q) p //= g q //= g if p > 2 * q: print(0) elif p == 2 * q: print(1) print(1,1) elif p == q + 1: ans = set() ans.add((1,q)) ans.add((q,1)) ans = list(ans) ans.sort() print(len(ans)) for (n,m) in ans: print(n,m) elif p == q: print(1) print(2,2) elif p < q: nm = [] for n in range(1,ceil(sqrt(q))+1): nume = q*n deno = p*n-q if (deno > 0) and (nume % deno == 0): m = nume//deno nm.append((n,m)) ans = set() for (n,m) in nm: ans.add((n,m)) ans.add((m,n)) ans = list(ans) ans.sort() print(len(ans)) for (n,m) in ans: print(n,m)