Skip to content

Instantly share code, notes, and snippets.

@SophieDeBenedetto
Created December 7, 2020 21:32
Show Gist options
  • Select an option

  • Save SophieDeBenedetto/4d4499c70089c884f1165a62d0e7a2af to your computer and use it in GitHub Desktop.

Select an option

Save SophieDeBenedetto/4d4499c70089c884f1165a62d0e7a2af to your computer and use it in GitHub Desktop.
defmodule Accountant do
@sum 2020
def product_of_equals_twenty_twenty(list, product \\ nil)
def product_of_equals_twenty_twenty(_list, product) when product != nil, do: product
def product_of_equals_twenty_twenty([_head | tail] = list, _product) do
product_of_equals_twenty_twenty(tail, get_two(list))
end
defp get_two(list) when length(list) == 1, do: nil
defp get_two([first | [second | _rest]]) when first + second == @sum do
first * second
end
defp get_two([first | [_second | rest]]) do
get_two([first | rest])
end
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment