結果
問題 | No.2013 Can we meet? |
ユーザー |
![]() |
提出日時 | 2022-04-16 14:10:19 |
言語 | PyPy3 (7.3.15) |
結果 |
TLE
(最新)
AC
(最初)
|
実行時間 | - |
コード長 | 894 bytes |
コンパイル時間 | 157 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 277,104 KB |
最終ジャッジ日時 | 2024-07-04 21:59:56 |
合計ジャッジ時間 | 5,908 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 10 TLE * 1 -- * 24 |
ソースコード
from collections import defaultdictP = 998244353def naive():x = abs(x1 - x2)y = abs(y1 - y2)D = defaultdict(int, {(x, y): 1})ANS = []for loop in range(n):for _ in range(2):nD = defaultdict(int)for k, v in D.items():xx, yy = kfor nx, ny, prob in ((xx + 1, yy, alpha), (xx - 1, yy, alpha), (xx, yy + 1, beta), (xx, yy - 1, beta)):nxy = (nx, ny)nD[nxy] = (nD[nxy] + v * prob) % PD = nDANS.append(D[(0, 0)])D[(0, 0)] = 0ans = 0for i in range(n):ans = (ans + ANS[i] * A[i]) % Preturn ansn = int(input())x1, y1, x2, y2 = map(int, input().split())a, b = map(int, input().split())iv = pow(2 * (a + b), P - 2, P)alpha = a * iv % Pbeta = b * iv % PA = [int(a) for a in input().split()]print(naive())