3 -export ([solve/0, solve/1, solve/2]).
14 io:format("The solution to ~p puzzle1 is: ~p~n", [?MODULE, solve(1, D)]);
18 io:format("The solution to ~p puzzle2 is: ~p~n", [?MODULE, solve(2, D)]);
24 lists:foldl(fun({Dir, Dis}, {X, Y}) ->
27 'down' -> {X, Y + Dis};
28 'forward' -> {X + Dis, Y}
37 lists:foldl(fun({Dir, Dis}, {X, Y, Aim}) ->
39 'up' -> {X, Y, Aim - Dis};
40 'down' -> {X, Y, Aim + Dis};
41 'forward' -> {X + Dis, Y + (Dis * Aim), Aim}