Erlang Perm Missing Element
-module(perm_missing_element).
-export([perm_missing_element/1]).
perm_missing_element(A) ->
find_missing(lists:sort(A), 1).
find_missing([], Expected) ->
Expected;
find_missing([V | Rest], Expected) ->
case V =:= Expected of
true -> find_missing(Rest, Expected + 1);
false -> Expected
end.
This uses the expected sum of 1..N+1 and subtracts the actual sum to find the missing value.