-module(prog).
-export([main/0]).
twoCombination([]) -> [];
twoCombination([H|T]) -> [{H, X} || X <- T] ++ twoCombination(T).
lesser(ValList) ->
DiffList = lists:
map(fun({A, B}) -> {abs(A - B), {A, B}} end, twoCombination(ValList)), {_, Values} = lists:
foldl(fun({Diff, DiffValues}, {Acc, AccValues}) -> case Diff =< Acc of
true -> {Diff, DiffValues};
false -> {Acc, AccValues}
end
end, {65535, 0}, DiffList),
Values.
main() ->
Result = lesser([41, 21, 19]),
io:
format("~p", [Result]), true.
LW1vZHVsZShwcm9nKS4KLWV4cG9ydChbbWFpbi8wXSkuCgp0d29Db21iaW5hdGlvbihbXSkgLT4gW107CnR3b0NvbWJpbmF0aW9uKFtIfFRdKSAtPiBbe0gsIFh9IHx8IFggPC0gVF0gKysgdHdvQ29tYmluYXRpb24oVCkuCiAKbGVzc2VyKFZhbExpc3QpIC0+CglEaWZmTGlzdCA9IGxpc3RzOm1hcChmdW4oe0EsIEJ9KSAtPiB7YWJzKEEgLSBCKSwge0EsIEJ9fSBlbmQsIHR3b0NvbWJpbmF0aW9uKFZhbExpc3QpKSwKCXtfLCBWYWx1ZXN9ID0gbGlzdHM6Zm9sZGwoZnVuKHtEaWZmLCBEaWZmVmFsdWVzfSwge0FjYywgQWNjVmFsdWVzfSkgLT4KCQljYXNlIERpZmYgPTwgQWNjIG9mCgkJCXRydWUgLT4ge0RpZmYsIERpZmZWYWx1ZXN9OwoJCQlmYWxzZSAtPiB7QWNjLCBBY2NWYWx1ZXN9CgkJZW5kCgllbmQsIHs2NTUzNSwgMH0sIERpZmZMaXN0KSwKCVZhbHVlcy4KCm1haW4oKSAtPgoJUmVzdWx0ID0gbGVzc2VyKFs0MSwgMjEsIDE5XSksCglpbzpmb3JtYXQoIn5wIiwgW1Jlc3VsdF0pLAoJdHJ1ZS4=