13 lines
358 B
Plaintext
13 lines
358 B
Plaintext
defmodule RC do
|
|
def expansion(range) do
|
|
Enum.flat_map(String.split(range, ","), fn part ->
|
|
case Regex.scan(~r/^(-?\d+)-(-?\d+)$/, part) do
|
|
[[_,a,b]] -> Enum.to_list(String.to_integer(a) .. String.to_integer(b))
|
|
[] -> [String.to_integer(part)]
|
|
end
|
|
end)
|
|
end
|
|
end
|
|
|
|
IO.inspect RC.expansion("-6,-3--1,3-5,7-11,14,15,17-20")
|