From e7bd47ffe976095fe3429b2d1ea407435bbb2c81 Mon Sep 17 00:00:00 2001 From: Shanti Chellaram Date: Thu, 1 Dec 2022 20:50:49 +0900 Subject: [PATCH] Day 1-2 --- problem1.erl => day1.erl | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) rename problem1.erl => day1.erl (76%) diff --git a/problem1.erl b/day1.erl similarity index 76% rename from problem1.erl rename to day1.erl index 0368946..8b07336 100644 --- a/problem1.erl +++ b/day1.erl @@ -1,4 +1,4 @@ --module(foo). +-module(day1). -export([main/1]). @@ -7,10 +7,9 @@ main(Args) -> {ok, Filedata} = file:read_file(Filename), Elves = binary:split(Filedata, <<"\n\n">>, [global, trim_all]), Loads = lists:map(fun elf_load/1, Elves), - {lists:max(Loads), ok}. + [First, Second, Third | _Rest] = lists:sort(fun (A,B) -> A >= B end, Loads), + {First, First + Second + Third}. elf_load([]) -> 0; elf_load([Load | Rest]) -> binary_to_integer(Load) + elf_load(Rest); elf_load(LoadString) when is_binary(LoadString) -> elf_load(binary:split(LoadString, <<$\n>>, [global, trim_all])). - -