結果
問題 |
No.3123 Inversion
|
ユーザー |
|
提出日時 | 2025-04-19 09:15:03 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
WA
|
実行時間 | - |
コード長 | 532 bytes |
コンパイル時間 | 678 ms |
コンパイル使用メモリ | 12,288 KB |
実行使用メモリ | 433,720 KB |
最終ジャッジ日時 | 2025-04-19 09:15:47 |
合計ジャッジ時間 | 38,697 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | WA * 1 |
other | AC * 2 WA * 19 |
ソースコード
import sys input = sys.stdin.read sys.setrecursionlimit(1 << 25) def main(): data = input().split() T = int(data[0]) M = int(data[1]) Ns = list(map(int, data[2:])) maxN = max(Ns) # 前計算: 階乗 fact = [1] * (maxN + 1) for i in range(1, maxN + 1): fact[i] = fact[i - 1] * i % M inv2 = pow(2, M - 2, M) results = [] for N in Ns: res = fact[N] * fact[N] % M res = res * inv2 % M results.append(res) print('\n'.join(map(str, results))) main()