結果
問題 |
No.1146 土偶Ⅰ
|
ユーザー |
|
提出日時 | 2020-08-15 13:49:02 |
言語 | OCaml (5.2.1) |
結果 |
AC
|
実行時間 | 10 ms / 2,000 ms |
コード長 | 639 bytes |
コンパイル時間 | 540 ms |
コンパイル使用メモリ | 21,580 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-09 02:00:28 |
合計ジャッジ時間 | 1,693 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 20 |
ソースコード
Scanf.scanf "%d" (fun n -> let rec gcd a b = if b = 0 then a else gcd b (a mod b) in let a = Array.init n (fun _ -> Scanf.scanf " %d" (fun a -> a)) in let rec loop_i i acc = let rec loop_j j acc = let rec loop_k k g acc = if k = n then acc else let acc = if gcd g a.(k) = 1 then acc + 1 else acc in loop_k (k + 1) g acc in if j = n then acc else loop_j (j + 1) (loop_k (j + 1) (gcd a.(i) a.(j)) acc) in if i = n then acc else loop_i (i + 1) (loop_j (i + 1) acc) in loop_i 0 0 |> Printf.printf "%d\n" )