結果
問題 |
No.186 中華風 (Easy)
|
ユーザー |
![]() |
提出日時 | 2021-12-04 18:09:41 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 717 bytes |
コンパイル時間 | 359 ms |
コンパイル使用メモリ | 82,304 KB |
実行使用メモリ | 52,608 KB |
最終ジャッジ日時 | 2024-07-07 00:31:56 |
合計ジャッジ時間 | 2,058 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 21 WA * 2 |
ソースコード
def ChineseRem(b1, b2, m1, m2): from math import gcd def extGCD(a, b): # ax + by = gcd(a, b)の解を求める if b == 0: return 1, 0 q = a // b r = a % b X, Y = extGCD(b, r) return Y, X - q * Y if (b1 - b2) % gcd(m1, m2) != 0: return False, False d = gcd(m1, m2) lcm = m1 * m2 // d p, q = extGCD(m1, m2) return ((b2 - b1) // d * m1 * p + b1) % lcm, lcm X, M = [0] * 3, [0] * 3 for i in range(3): X[i], M[i] = map(int, input().split()) x, mod = ChineseRem(X[0], X[1], M[0], M[1]) if not x: print(-1) else: ans, _ = ChineseRem(x, X[2], mod, M[2]) if ans: print(ans) else: print(-1)