From bc8b9edc0860f4804dfd0ea868ee7beaa564e62a Mon Sep 17 00:00:00 2001 From: DJ O'Leary Date: Sat, 27 Jun 2026 04:28:48 +0200 Subject: test: fix ocaml tests 2024 {WIP} --- 2024/ocaml/lib/day_01/part_01.ml | 40 ------------------------------------ 2024/ocaml/lib/day_01/part_02.ml | 44 ---------------------------------------- 2 files changed, 84 deletions(-) delete mode 100644 2024/ocaml/lib/day_01/part_01.ml delete mode 100644 2024/ocaml/lib/day_01/part_02.ml (limited to '2024/ocaml/lib/day_01') diff --git a/2024/ocaml/lib/day_01/part_01.ml b/2024/ocaml/lib/day_01/part_01.ml deleted file mode 100644 index 100b12a..0000000 --- a/2024/ocaml/lib/day_01/part_01.ml +++ /dev/null @@ -1,40 +0,0 @@ -(* Day 1: Part 1 *) - -let calculate_distance x y = Stdlib.abs (x - y) - -(** Require: left and right to be the same length *) -let solve left right = - let sorted_left = List.sort Stdlib.compare left in - let sorted_right = List.sort Stdlib.compare right in - let distances = List.map2 calculate_distance sorted_left sorted_right in - List.fold_left ( + ) 0 distances - -let left line = - let pos = 0 in - let len = String.index line ' ' in - String.sub line pos len - -let right line = - let pos = String.rindex line ' ' + 1 in - let len = String.length line - pos in - String.sub line pos len - -let line_to_tuple line = (left line, right line) - -let lines_to_lists lines = - let tuples = List.map line_to_tuple lines in - let left = - List.map - (fun t -> - let l, _ = t in - int_of_string l) - tuples - in - let right = - List.map - (fun t -> - let _, r = t in - int_of_string r) - tuples - in - (left, right) diff --git a/2024/ocaml/lib/day_01/part_02.ml b/2024/ocaml/lib/day_01/part_02.ml deleted file mode 100644 index 25c8b7d..0000000 --- a/2024/ocaml/lib/day_01/part_02.ml +++ /dev/null @@ -1,44 +0,0 @@ -(* Day 1: Part 2 *) - -let rec count_occurrances_help element acc lst = - match lst with - | [] -> acc - | h :: t -> - if h = element then count_occurrances_help element (acc + 1) t - else count_occurrances_help element acc t - -let count_occurrances element lst = count_occurrances_help element 0 lst - -let solve left right = - List.map (fun x -> x * count_occurrances x right) left - |> List.fold_left ( + ) 0 - -let left line = - let pos = 0 in - let len = String.index line ' ' in - String.sub line pos len - -let right line = - let pos = String.rindex line ' ' + 1 in - let len = String.length line - pos in - String.sub line pos len - -let line_to_tuple line = (left line, right line) - -let lines_to_lists lines = - let tuples = List.map line_to_tuple lines in - let left = - List.map - (fun t -> - let l, _ = t in - int_of_string l) - tuples - in - let right = - List.map - (fun t -> - let _, r = t in - int_of_string r) - tuples - in - (left, right) -- cgit v1.2.3