Day 3
This commit is contained in:
@@ -12,4 +12,24 @@ defmodule Aoc2023.Common do
|
||||
fn (val) -> val |> unquote(expr) end
|
||||
end
|
||||
end
|
||||
|
||||
defmacro l &&& r do
|
||||
quote do
|
||||
fn val ->
|
||||
l = val |> unquote(l)
|
||||
r = val |> unquote(r)
|
||||
{l, r}
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
def runs(lst, f) do
|
||||
lst
|
||||
|> Enum.with_index()
|
||||
|> Enum.chunk_by(pipe(elem(0) |> f.()))
|
||||
|> Enum.filter(pipe(Enum.at(0) |> elem(0) |> f.()))
|
||||
|> Enum.map(Enum.at(0) |> elem(1) &&& length)
|
||||
end
|
||||
|
||||
def id(x), do: x
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user