結果
問題 |
No.143 豆
|
ユーザー |
![]() |
提出日時 | 2015-11-14 05:18:57 |
言語 | OCaml (5.2.1) |
結果 |
AC
|
実行時間 | 2 ms / 1,000 ms |
コード長 | 774 bytes |
コンパイル時間 | 343 ms |
コンパイル使用メモリ | 21,504 KB |
実行使用メモリ | 5,248 KB |
最終ジャッジ日時 | 2024-10-08 23:41:46 |
合計ジャッジ時間 | 1,130 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge3 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 17 |
ソースコード
let split s c = let len = String.length s in let rec iter pos to_rev = if pos = len then List.rev ("" :: to_rev) else match try Some ( String.index_from s pos c ) with Not_found -> None with Some pos2 -> if pos2 = pos then iter (pos+1) ("" :: to_rev) else iter (pos2+1) ((String.sub s pos (pos2-pos)) :: to_rev) | None -> List.rev ( String.sub s pos (len-pos) :: to_rev ) in iter 0 [] let beens k n agesum = let beensum = k * n in if beensum < agesum then -1 else beensum - agesum let () = let beens1 = Scanf.sscanf (read_line ()) "%d %d" beens in let age_list = List.map int_of_string @@ split (read_line ()) ' ' in print_int @@ beens1 @@ List.fold_left (fun x y -> x + y) 0 age_list