結果
問題 | No.187 中華風 (Hard) |
ユーザー | onexisan |
提出日時 | 2015-05-21 01:00:26 |
言語 | Python2 (2.7.18) |
結果 |
WA
|
実行時間 | - |
コード長 | 709 bytes |
コンパイル時間 | 47 ms |
コンパイル使用メモリ | 6,664 KB |
実行使用メモリ | 8,112 KB |
最終ジャッジ日時 | 2023-09-20 10:29:36 |
合計ジャッジ時間 | 12,901 ms |
ジャッジサーバーID (参考情報) |
judge11 / judge13 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 26 ms
7,708 KB |
testcase_01 | AC | 26 ms
7,708 KB |
testcase_02 | AC | 840 ms
8,112 KB |
testcase_03 | AC | 806 ms
7,864 KB |
testcase_04 | AC | 749 ms
8,108 KB |
testcase_05 | AC | 746 ms
8,112 KB |
testcase_06 | AC | 750 ms
8,012 KB |
testcase_07 | AC | 753 ms
7,932 KB |
testcase_08 | AC | 819 ms
8,112 KB |
testcase_09 | AC | 816 ms
8,016 KB |
testcase_10 | AC | 819 ms
7,948 KB |
testcase_11 | AC | 752 ms
7,932 KB |
testcase_12 | AC | 749 ms
7,944 KB |
testcase_13 | AC | 30 ms
7,864 KB |
testcase_14 | AC | 29 ms
7,716 KB |
testcase_15 | WA | - |
testcase_16 | WA | - |
testcase_17 | AC | 23 ms
7,804 KB |
testcase_18 | AC | 26 ms
7,692 KB |
testcase_19 | AC | 23 ms
7,616 KB |
testcase_20 | AC | 523 ms
8,092 KB |
testcase_21 | AC | 24 ms
7,696 KB |
testcase_22 | AC | 750 ms
7,964 KB |
testcase_23 | AC | 23 ms
7,740 KB |
testcase_24 | AC | 23 ms
7,800 KB |
ソースコード
from fractions import gcd def inv(a, m): b, x, y = m, 1, 0 while b != 0: t = a // b a, b = b, a - t * b x, y = y, x - t * y pass return x % m def CRT(congs): x, m = 0, 1 for y, n in congs: g = gcd(m, n) if x % g != y % g: return -1, -1 m //= g; l = m * n _m = m while True: t = gcd(m * _m, l) if t == m: break m = t n //= gcd(m, n) x %= m; x += (y - x % n) * inv(m, n) % n * m; m *= n pass return x, m mod = 10 ** 9 + 7 n = input() congs = [map(int, raw_input().split()) for _ in xrange(n)] ans = CRT(congs)[0] print -1 if ans == -1 else ans % mod