Simplify/refactor day 1 code
This commit is contained in:
parent
bf692a17db
commit
8a12f5aac1
14
ocaml/1.ml
14
ocaml/1.ml
|
@ -1,20 +1,12 @@
|
||||||
#load "str.cma" ;;
|
#load "str.cma" ;;
|
||||||
|
#use "lib/file_utils.ml" ;;
|
||||||
|
|
||||||
let read_file filename =
|
let contents = read_file "inputs/1.txt" in
|
||||||
let ch = open_in filename in
|
|
||||||
let s = really_input_string ch (in_channel_length ch) in
|
|
||||||
close_in ch;
|
|
||||||
s
|
|
||||||
;;
|
|
||||||
|
|
||||||
let contents = read_file "inputs/1.txt" ;;
|
|
||||||
(* print_endline contents ;; *)
|
|
||||||
|
|
||||||
let maxcal = Str.split (Str.regexp "\n\n") contents
|
let maxcal = Str.split (Str.regexp "\n\n") contents
|
||||||
|> List.map (String.split_on_char '\n')
|
|> List.map (String.split_on_char '\n')
|
||||||
|> List.map (List.map (int_of_string))
|
|> List.map (List.map (int_of_string))
|
||||||
|> List.map (List.fold_left (+) 0)
|
|> List.map (List.fold_left (+) 0)
|
||||||
|> List.fold_left (max) 0
|
|> List.fold_left (max) 0
|
||||||
;;
|
in
|
||||||
|
|
||||||
Printf.printf "%d" maxcal
|
Printf.printf "%d" maxcal
|
||||||
|
|
|
@ -0,0 +1,6 @@
|
||||||
|
let read_file filename =
|
||||||
|
let ch = open_in filename in
|
||||||
|
let s = really_input_string ch (in_channel_length ch) in
|
||||||
|
close_in ch;
|
||||||
|
s
|
||||||
|
;;
|
Loading…
Reference in New Issue