結果

問題 No.1510 Simple Integral
ユーザー gew1fw
提出日時 2025-06-12 20:42:45
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 706 bytes
コンパイル時間 167 ms
コンパイル使用メモリ 82,460 KB
実行使用メモリ 60,548 KB
最終ジャッジ日時 2025-06-12 20:42:50
合計ジャッジ時間 3,172 ms
ジャッジサーバーID
(参考情報)
judge5 / judge3
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 12 WA * 31
権限があれば一括ダウンロードができます

ソースコード

diff #

mod_val = 998244353

N = int(input())
A = list(map(int, input().split()))

a_mods = []
a_sq_mods = []
for a in A:
    a_mod = a % mod_val
    a_mods.append(a_mod)
    a_sq_mod = (a_mod * a_mod) % mod_val
    a_sq_mods.append(a_sq_mod)

sum_result = 0

for k in range(N):
    a_k_sq = a_sq_mods[k]
    D_k = 1
    for j in range(N):
        if j == k:
            continue
        a_j_sq = a_sq_mods[j]
        diff = (a_j_sq - a_k_sq) % mod_val
        D_k = (D_k * diff) % mod_val
    inv_Dk = pow(D_k, mod_val - 2, mod_val)
    a_k_mod = a_mods[k]
    inv_ak = pow(a_k_mod, mod_val - 2, mod_val)
    term_k = (inv_ak * inv_Dk) % mod_val
    sum_result = (sum_result + term_k) % mod_val

print(sum_result)
0