]> fbox.kageds.com Git - adventofcode.git/blobdiff - day9/day9.erl
more tidy
[adventofcode.git] / day9 / day9.erl
index ae181db6ab7fa363f1e008f52593f3d3ca1d2465..190603055cb4da6a485987720d540975972d3896 100644 (file)
@@ -60,7 +60,7 @@ get_basins(Low_points, Table) ->
 
 get_basins([], _Table, Basins) -> Basins;
 get_basins([Low_point|Rest], Table, Basins) ->
-  Basin = [Low_point|lists:usort(get_up_slopes([Low_point], Table))],
+  Basin = [Low_point|get_up_slopes([Low_point], Table)],
   get_basins(Rest, Table, [Basin|Basins]).
 
 low_points([H|_] =  Table) ->
@@ -76,7 +76,7 @@ get_up_slopes([], _Table, Acc) -> Acc;
 get_up_slopes([{X, Y}|Rest], Table, Acc) ->
     V = get_value({X,Y}, Table),
     Neighbours = [{X+1, Y},{X-1, Y},{X, Y+1},{X, Y-1}],
-    Up_slopes = lists:filter(fun({X1,Y1}) -> C = get_value({X1,Y1}, Table), C /= 9 andalso C /=10 andalso C > V end, Neighbours),
+    Up_slopes = lists:filter(fun({X1,Y1}) -> C = get_value({X1,Y1}, Table), C /= 9 andalso C > V end, Neighbours),
     get_up_slopes(lists:usort(Rest ++ Up_slopes), Table, lists:usort(Acc ++ Up_slopes)).
 
 is_low_point({X,Y}, Table) ->
@@ -86,7 +86,7 @@ is_low_point({X,Y}, Table) ->
     V < get_value({X, Y+1}, Table) andalso
     V < get_value({X, Y-1}, Table).
 
-get_value({X,Y}, [H|_] = Table) when X == 0; Y == 0; Y > length(Table); X > length(H) -> 10;
+get_value({X,Y}, [H|_] = Table) when X == 0; Y == 0; Y > length(Table); X > length(H) -> 9;
 
 get_value({X,Y}, Table) ->
        lists:nth(X, lists:nth(Y, Table)).