diff options
author | Oscar Najera <hi@oscarnajera.com> | 2023-01-26 22:09:57 +0100 |
---|---|---|
committer | Oscar Najera <hi@oscarnajera.com> | 2023-01-26 22:09:57 +0100 |
commit | c7f01066164817bbf624f2e7a63c6ac0aeea5f61 (patch) | |
tree | 8dec4fd44655094ae59ca101672e9ee3ed339f7b /AoC2022/03/solver.jl | |
parent | 31aa0839953395f5998c7ec4350760cfebae6506 (diff) | |
download | scratch-c7f01066164817bbf624f2e7a63c6ac0aeea5f61.tar.gz scratch-c7f01066164817bbf624f2e7a63c6ac0aeea5f61.tar.bz2 scratch-c7f01066164817bbf624f2e7a63c6ac0aeea5f61.zip |
Learning some julia
Diffstat (limited to 'AoC2022/03/solver.jl')
-rw-r--r-- | AoC2022/03/solver.jl | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/AoC2022/03/solver.jl b/AoC2022/03/solver.jl new file mode 100644 index 0000000..1ebadbf --- /dev/null +++ b/AoC2022/03/solver.jl @@ -0,0 +1,12 @@ +using Test + +data = open("input") do f + split(read(f, String)) +end + +priority(x) = islowercase(x) ? x - 'a' + 1 : x - 'A' +27 + +@testset "solutions" begin + @test map(s-> intersect(s[1:length(s)÷2], s[length(s)÷2+1:end])[1] |> priority, data) |> sum == 8072 + @test [intersect(data[i:i+2]...)[1] for i ∈ 1:3:length(data)] .|> priority |> sum == 2567 +end |