From 4c3a50166bf0f78ce89459c352cc1c6536a8b96d Mon Sep 17 00:00:00 2001 From: DJ O'Leary Date: Sat, 29 Nov 2025 20:23:02 +0100 Subject: chore: make language folders snake_case --- 2024/OCaml/lib/day_02/part_01.ml | 42 ---------------------------------------- 1 file changed, 42 deletions(-) delete mode 100644 2024/OCaml/lib/day_02/part_01.ml (limited to '2024/OCaml/lib/day_02') diff --git a/2024/OCaml/lib/day_02/part_01.ml b/2024/OCaml/lib/day_02/part_01.ml deleted file mode 100644 index 32d7ab8..0000000 --- a/2024/OCaml/lib/day_02/part_01.ml +++ /dev/null @@ -1,42 +0,0 @@ -(* Day 2: Part 1 *) - -type level = int -type reports = level list list - -let rec compare_report_levels_helper comparison prev report = - match report with - | [] -> true - | h :: t -> comparison prev h && compare_report_levels_helper comparison h t - -let compare_report_levels comparison report = - match report with - | [] -> true - | h :: t -> compare_report_levels_helper comparison h t - -let all_increasing report = compare_report_levels ( < ) report -let all_decreasing report = compare_report_levels ( > ) report - -let at_least_one report = - compare_report_levels (fun prev curr -> prev <> curr) report - -let at_most_three report = - compare_report_levels (fun prev curr -> abs (prev - curr) <= 3) report - -let check_report_safety report = - if not (all_increasing report || all_decreasing report) then false - else if not (at_least_one report && at_most_three report) then false - else true - -let rec count_safe_reports acc lst = - match lst with - | [] -> acc - | h :: t -> - if h then count_safe_reports (acc + 1) t else count_safe_reports acc t - -let solve reports = - reports |> List.map check_report_safety |> count_safe_reports 0 - -let line_to_report line = - line |> String.split_on_char ' ' |> List.map int_of_string - -let lines_to_reports lines = List.map line_to_report lines -- cgit v1.2.3