結果
問題 |
No.2381 Gift Exchange Party
|
ユーザー |
![]() |
提出日時 | 2023-07-14 23:17:35 |
言語 | Julia (2.11.2) |
結果 |
WA
|
実行時間 | - |
コード長 | 692 bytes |
コンパイル時間 | 334 ms |
コンパイル使用メモリ | 7,200 KB |
実行使用メモリ | 474,152 KB |
最終ジャッジ日時 | 2024-10-01 17:27:58 |
合計ジャッジ時間 | 9,458 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 WA * 1 |
other | AC * 3 WA * 11 TLE * 8 |
ソースコード
toI(s=readline()) = parse(Int,s) toVI(s=readline()) = toI.(split(s)) const MOD = 998244353 ⊕(x,y) = mod(x+y,MOD) ⊖(x,y) = mod(x-y,MOD) ⊗(x,y) = mod(x*y,MOD) ⊘(x,y) = x⊗invmod(y,MOD) ↑(x,y) = powermod(x,y,MOD) function main() n,p = toVI() solve(n,p) |> println end function solve(n,p) d,r = divrem(n,p) cnt = factmod(n) for d in 0:n÷p r = n - d*p cnt = cnt ⊖ combmod(n,r)⊗factmod(d*p)⊘factmod(p)↑d⊘factmod(d)⊗(factmod(p)-1)↑d end cnt end @generated function factmod(n) xs = zeros(Int,200001) xs[1] = 1 for i in 1:200000 xs[i+1] = xs[i]⊗i end return :($xs[n+1]) end function combmod(n,r) factmod(n)⊘(factmod(r)⊗factmod(n-r)) end main()