Categorygithub.com/gmlewis/advent-of-code-2021
repository
0.37.0
Repository: https://github.com/gmlewis/advent-of-code-2021.git
Documentation: pkg.go.dev

# Packages

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# README

advent-of-code-2021

Here are my solutions for Advent of Code 2021.

This year, I chose to write my solutions using Go 1.18 with generics (by building the Go compiler from the latest master branch):

$ go version
go version devel go1.18-deb988a286 Fri Dec 3 18:09:19 2021 +0000 linux/amd64

Benchmarks

Benchmarks were run on an Intel i7 laptop running Linux Mint 19.3.

PuzzleBenchmarkItersns/op
day01/part1BenchmarkInput-48048144071 ns/op
day01/part2BenchmarkInput-46345160099 ns/op
-------------------------------------------------------------
day02/part1BenchmarkInput-47518142567 ns/op
day02/part2BenchmarkInput-47508140629 ns/op
-------------------------------------------------------------
day03/part1BenchmarkInput-42451143900 ns/op
day03/part2BenchmarkInput-45559191525 ns/op
-------------------------------------------------------------
day04/part1BenchmarkInput-42703782730 ns/op
day04/part2BenchmarkInput-43103772155 ns/op
-------------------------------------------------------------
day05/part1BenchmarkInput-42644208473 ns/op
day05/part2BenchmarkInput-41388025595 ns/op
-------------------------------------------------------------
day06/part1BenchmarkInput-41432077127 ns/op
day06/part2BenchmarkInput-45192212946 ns/op
-------------------------------------------------------------
day07/part1BenchmarkInput-43403504080 ns/op
day07/part2BenchmarkInput-42884131633 ns/op
-------------------------------------------------------------
day08/part1BenchmarkInput-411214107337 ns/op
day08/part2BenchmarkInput-46301870067 ns/op
-------------------------------------------------------------
day09/part1BenchmarkInput-45952000520 ns/op
day09/part2BenchmarkInput-42974048426 ns/op
-------------------------------------------------------------
day10/part1BenchmarkInput-48643119493 ns/op
day10/part2BenchmarkInput-48388127750 ns/op
-------------------------------------------------------------
day11/part1BenchmarkInput-48741359490 ns/op
day11/part2BenchmarkInput-43243681322 ns/op
-------------------------------------------------------------
day12/part1BenchmarkInput-42739919589 ns/op
day12/part2BenchmarkInput-411396313129 ns/op
-------------------------------------------------------------
day13/part1BenchmarkInput-43220344567 ns/op
day13/part2BenchmarkInput-41161865072 ns/op
-------------------------------------------------------------
day14/part1BenchmarkInput-43763065596 ns/op
day14/part2BenchmarkInput-41483740865 ns/op
-------------------------------------------------------------
day15/part1BenchmarkInput-43237535837 ns/op
day15/part2BenchmarkInput-411414612059 ns/op
-------------------------------------------------------------
day16/part1BenchmarkInput-48124134785 ns/op
day16/part2BenchmarkInput-47513136187 ns/op
-------------------------------------------------------------
day17/part1BenchmarkInput-41644723567 ns/op
day17/part2BenchmarkInput-41454816308 ns/op
-------------------------------------------------------------
day18/part1BenchmarkInput-43903518750 ns/op
day18/part2BenchmarkInput-48113735733 ns/op
-------------------------------------------------------------
day19/part1BenchmarkInput-48139914205 ns/op
day19/part2BenchmarkInput-48141170683 ns/op
-------------------------------------------------------------
day20/part1BenchmarkInput-41468597374 ns/op
day20/part2BenchmarkInput-43435822786 ns/op
-------------------------------------------------------------
day21/part1BenchmarkInput-42185359397 ns/op
day21/part2BenchmarkInput-42854468106 ns/op
-------------------------------------------------------------
day22/part1BenchmarkInput-47161074391 ns/op
day22/part2BenchmarkInput-4191770973916 ns/op
-------------------------------------------------------------
day23/part1BenchmarkInput-4119647640120 ns/op
day23/part2BenchmarkInput-41110287766926 ns/op
-------------------------------------------------------------
day24/part1BenchmarkInput-46079400067 ns/op
day24/part2BenchmarkInput-46079400067 ns/op
-------------------------------------------------------------
day25/part1BenchmarkInput-411119637278 ns/op
-------------------------------------------------------------

Several of the algorithms can be improved, obviously, but that was a lot of fun and you never stop learning when tackling the wide variety of challenges. Thank you for AOC, http://was.tl/ !


License

Copyright 2021 Glenn M. Lewis. All Rights Reserved.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.