結果
問題 |
No.1141 田グリッド
|
ユーザー |
|
提出日時 | 2022-07-05 16:15:03 |
言語 | PyPy3 (7.3.15) |
結果 |
WA
|
実行時間 | - |
コード長 | 918 bytes |
コンパイル時間 | 354 ms |
コンパイル使用メモリ | 82,024 KB |
実行使用メモリ | 88,924 KB |
最終ジャッジ日時 | 2024-12-15 22:51:45 |
合計ジャッジ時間 | 9,321 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 24 WA * 7 |
ソースコード
MOD = 10 ** 9 + 7 h, w = map(int, input().split()) A = [list(map(int, input().split())) for _ in range(h)] prod = 1 zero = 0 prod_row = [1] * h prod_col = [1] * w zero_row = [1] * h zero_col = [1] * w for i in range(h): for j in range(w): if A[i][j] == 0: zero += 1 zero_row[i] += 1 zero_col[j] += 1 else: prod *= A[i][j] prod_row[i] *= A[i][j] prod_col[j] *= A[i][j] prod %= MOD prod_row[i] %= MOD prod_col[j] %= MOD Q = int(input()) for _ in range(Q): r, c = map(int, input().split()) r -= 1 c -= 1 z = zero - zero_row[r] - zero_col[c] + int(A[r][c] == 0) if z > 0: print(0) else: ans = prod * pow(prod_row[r] * prod_col[c] % MOD, MOD - 2, MOD) % MOD if A[r][c] != 0: ans *= A[r][c] ans %= MOD print(ans)