my solutions to advent of code
aoc advent-of-code
at main 635 B view raw
1defmodule Main do 2 {_, input} = 3 File.read("../input.txt") 4 5 input = 6 input 7 |> String.trim() 8 |> String.split("\n") 9 |> Enum.map(fn v -> 10 v |> String.split("x") |> Enum.map(fn v -> String.to_integer(v) end) 11 end) 12 13 input 14 |> Enum.reduce(0, fn v, acc -> 15 [l, w, h] = v 16 sides = [l * w, w * h, h * l] 17 acc + Enum.sum(sides) * 2 + Enum.min(sides) 18 end) 19 |> IO.puts() 20 21 input 22 |> Enum.reduce(0, fn measure, acc -> 23 [l, w, h] = measure 24 half_perimeter = [l + w, w + h, h + l] 25 26 acc + Enum.reduce(measure, fn a, b -> a * b end) + 27 Enum.min(half_perimeter) * 2 28 end) 29 |> IO.puts() 30end