結果
問題 |
No.3022 一元一次式 mod 1000000000
|
ユーザー |
|
提出日時 | 2025-02-14 22:24:42 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 566 bytes |
コンパイル時間 | 412 ms |
コンパイル使用メモリ | 82,352 KB |
実行使用メモリ | 77,784 KB |
最終ジャッジ日時 | 2025-02-14 22:24:45 |
合計ジャッジ時間 | 2,876 ms |
ジャッジサーバーID (参考情報) |
judge6 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 19 WA * 1 |
ソースコード
# https://atcoder.jp/contests/abc186/tasks/abc186_e from math import gcd T = int(input()) for _ in range(T): N, M = map(int, input().split()) MOD = 10 ** 9 if N % MOD == 0 and M % MOD == 0: print(1) continue N %= MOD M %= MOD # g = gcd(gcd(N, MOD), M) # N //= g # M //= g # MOD //= g N, S, K = MOD, M, N g = gcd(K, N) if S % g: print(-1) else: N //= g S //= g K //= g # ans = -S * K^-1 (mod N) ans = (N - S * pow(K, -1, N)) % N print(ans)