結果
問題 | No.2742 Car Flow |
ユーザー |
|
提出日時 | 2024-04-21 01:56:31 |
言語 | OCaml (5.2.1) |
結果 |
AC
|
実行時間 | 31 ms / 2,000 ms |
コード長 | 714 bytes |
コンパイル時間 | 1,923 ms |
コンパイル使用メモリ | 21,572 KB |
実行使用メモリ | 7,296 KB |
最終ジャッジ日時 | 2024-10-13 00:24:33 |
合計ジャッジ時間 | 4,608 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 1 |
other | AC * 50 |
ソースコード
Scanf.scanf "%d" (fun n ->let z = 998244353 inlet ( *@) a b = (a * b) mod z inlet ( /@) a b =let extgcd x y =let rec eg r0 r1 a0 a1 =if r1 = 0 then a0 elselet q1 = r0 / r1 ineg r1 (r0 mod r1) a1 (a0 - q1 * a1)ineg x y 1 0inlet inv x y = (* 1/x in mod y *)let c = extgcd x y inif c < 0 then c + y else cina *@ inv b zinlet a = Array.init n (fun _ -> Scanf.scanf " %d" (fun a -> a)) inlet sum = Array.fold_left (+) 0 a inlet sum = if sum * 2 >= n then n - sum else sum inPrintf.printf "%d\n" @@ (sum /@ n))