library(tidyverse)
input <- read_table(file = "inputs/2024/01.txt",
col_names = c("side_1", "side_2"),
show_col_types = FALSE)Day 1: Historian Hysteria
Part One
tibble(side_1 = input |> pull(side_1) |> vctrs::vec_sort(),
side_2 = input |> pull(side_2) |> vctrs::vec_sort()) |>
mutate(distance = abs(side_1 - side_2)) |>
filter(distance > 0) |>
summarise(total = sum(distance)) |>
pull(total) |>
cat()
## 1970720Part Two
input |>
mutate(multiplier = map_int(side_1, \(x) sum(side_2 == x)),
similarity_score = multiplier * side_1) |>
summarise(total = sum(similarity_score)) |>
pull(total) |>
cat()
## 17191599