1
0
Fork 0

solve 2021 day 7

This commit is contained in:
Sloane Perrault 2022-09-21 09:19:53 -04:00
parent c3ad2c3db1
commit ec8ce0cd4e
2 changed files with 37 additions and 1 deletions

View file

@ -15,7 +15,7 @@
| S | M | T | W | T | F | S |
| :-: | :-: | :-: | :-: | :-: | :-: | :-: |
| | | | [1] | [2] | [3] | [4] |
| [5] | [6] | 7 | 8 | 9 | 10 | 11 |
| [5] | [6] | [7] | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
@ -27,3 +27,4 @@
[4]: ./lib/2021/4.ex
[5]: ./lib/2021/5.ex
[6]: ./lib/2021/6.ex
[7]: ./lib/2021/7.ex

35
2021/lib/2021/7.ex Normal file
View file

@ -0,0 +1,35 @@
import AOC
aoc 2021, 7 do
use AOCHelpers
def p1 do
crabs = input_number_list()
max = Enum.max(crabs)
for position <- 1..max do
for crab <- crabs do
abs(crab - position)
end
|> Enum.sum()
end
|> Enum.min()
end
def p2 do
crabs = input_number_list()
max = Enum.max(crabs)
for position <- 1..max do
for crab <- crabs do
n = abs(crab - position)
1 / 2 * n * (n + 1)
end
|> Enum.sum()
end
|> Enum.min()
|> trunc()
end
end