advent-of-code-go

module
v0.0.0-...-032407a Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 6, 2022 License: MIT

README

350 stars!

reddit thread after completing the first six years

reddit thread post 2021

Running Locally

Requirements

Go 1.16+ is required because embed is used for input files.

Use go run main.go -part <1 or 2> will be usable to run the actual inputs for that day.

Use go test -run RegExpToMatchFunctionNames . to run examples and unit tests via the main_test.go files.

Scripts (used for all years but 2019)

Makefile should be fairly self-documenting. Alternatively you can run the binaries yourself via go run or go build.

make help prints a help message.

Make skeleton files

for ((i=1; i<26; i++)); do
make skeleton DAY=$i YEAR=2021
done

Note that skeletons use embed and will not compile without an input.txt file located in the same folder. Input files can be made via make input.

make skeleton DAY=5 YEAR=2020
make input DAY=5 YEAR=2020 AOC_SESSION_COOKIE=your_cookie

Fetch inputs and write to input.txt files

Requires passing your cookie from AOC from either -cookie flag, or AOC_SESSION_COOKIE env variable.

make input DAY=1 YEAR=2020

Directories

Path Synopsis
data-structures
set
Package halp is a bunch of helpers for AOC specific debugging like printing infinite grids (map[[2]int]<T> <- Go generics will be useful here...)
Package halp is a bunch of helpers for AOC specific debugging like printing infinite grids (map[[2]int]<T> <- Go generics will be useful here...)
Package learning is for testing random things that might be useful but I need to spend some time playing around with
Package learning is for testing random things that might be useful but I need to spend some time playing around with
scripts
aoc
Package aoc gets inputs and prompts from adventofcode.com
Package aoc gets inputs and prompts from adventofcode.com
cmd/input command
cmd/prompt command
cmd/skeleton command
skeleton
Package skeleton makes skeletons to be filled out with solutions.
Package skeleton makes skeletons to be filled out with solutions.
skeleton/tmpls command

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL