結果
| 問題 | No.1529 Constant Lcm |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-10-06 08:43:57 |
| 言語 | PyPy3 (8.0.0 + ACL) |
| 結果 |
AC
不安定
|
| 実行時間 | 972 ms / 3,000 ms |
| + 261µs | |
| コード長 | 525 bytes |
| 記録 | |
| コンパイル時間 | 119 ms |
| コンパイル使用メモリ | 65,080 KB |
| 実行使用メモリ | 81,528 KB |
| 最終ジャッジ日時 | 2026-10-16 04:06:01 |
| 合計ジャッジ時間 | 12,611 ms |
|
ジャッジサーバーID (参考情報) |
judge1_0 / judge3_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 2 |
| other | AC * 25 |
ソースコード
P = list(range(10**6))
for i in range(2,10**6):
if i*i>10**6:break
for j in range(i*i,10**6,i):
P[j] = P[i]
MOD = 998244353
N = int(input())
def p_fact(x):
C = {}
while x>1:
p = P[x]
C[p] = C.get(p,0)+1
x //= p
return C
lcm = p_fact(N-1)
for i in range(2,N):
C1 = p_fact(i)
C = p_fact(N-i)
for p in C1:
C[p] = C.get(p,0)+C1[p]
for p in C:
lcm[p] = max(lcm.get(p,0),C[p])
ans = 1
for p in lcm:
ans = (ans*pow(p,lcm[p],MOD))%MOD
print(ans)