結果
問題 |
No.2299 Antitypoglycemia
|
ユーザー |
![]() |
提出日時 | 2025-05-06 22:19:32 |
言語 | Go (1.23.4) |
結果 |
AC
|
実行時間 | 3 ms / 2,000 ms |
コード長 | 532 bytes |
コンパイル時間 | 10,780 ms |
コンパイル使用メモリ | 242,520 KB |
実行使用メモリ | 7,844 KB |
最終ジャッジ日時 | 2025-05-06 22:19:44 |
合計ジャッジ時間 | 12,160 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 25 |
ソースコード
package main import . "fmt" func main() { var n, a, b int Scan(&n, &a, &b) if n == 2 && a == b { Println(0) // 念のため return } const Mod = 998244353 var ans int if a == b { ans = (n-1)*(n-2)%Mod for i := 1; i <= n-2; i++ { ans = ans*i%Mod } Println(ans) return } all := 1 pre := 1 dbl := 1 for i := 1; i <= n; i++ { all = all*i%Mod if i < n { pre = pre*i%Mod } if i < n-1 { dbl = dbl*i%Mod } } ans = (all + (Mod - pre) + (Mod - pre) + dbl) % Mod Println(ans) }