結果
| 問題 |
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()