Data commit
This commit is contained in:
parent
7387c8f97b
commit
cb5bb5e222
199093 changed files with 3378972 additions and 0 deletions
|
|
@ -0,0 +1,24 @@
|
|||
-module(rosetta).
|
||||
-export([ncs/1]).
|
||||
|
||||
masks(N) ->
|
||||
MaxMask = trunc(math:pow(2, N)),
|
||||
Total = lists:map(fun(X) -> integer_to_list(X, 2) end,
|
||||
lists:seq(3, MaxMask)),
|
||||
Filtered = lists:filter(fun(X) -> contains_noncont(X) end, Total),
|
||||
lists:map(fun(X) -> string:right(X, N, $0) end, Filtered). % padding
|
||||
|
||||
contains_noncont(N) ->
|
||||
case re:run(N, "10+1") of
|
||||
{match, _} -> true;
|
||||
nomatch -> false
|
||||
end.
|
||||
|
||||
apply_mask_to_list(Mask, List) ->
|
||||
Zipped = lists:zip(Mask, List),
|
||||
Filtered = lists:filter(fun({Include, _}) -> Include > 48 end, Zipped),
|
||||
lists:map(fun({_, Value}) -> Value end, Filtered).
|
||||
|
||||
ncs(List) ->
|
||||
lists:map(fun(Mask) -> apply_mask_to_list(Mask, List) end,
|
||||
masks(length(List))).
|
||||
Loading…
Add table
Add a link
Reference in a new issue