advent-of-code

module
v0.0.0-...-5c7ee01 Latest Latest
Warning

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

Go to latest
Published: Dec 25, 2024 License: BSD-3-Clause

README

advent-of-code

Build Status

This repository contains my Go solutions for Advent of Code programming challenges, along with related library code and advent.sh, a shell script that makes various common tasks easier.

Usage

In order for the library code to be able to download input, $HOME/.advent-of-code-session should contain the value of the session cookie that gets set for the .adventofcode.com domain after authenticating with the website. The session needs to be updated every year or two.

I have a function similar to the following declared in my shell (zsh):

advent() {
  case "$1" in
    -h|--help|check|checkall|help|input|run|save|time|web)
      $HOME/advent-of-code/advent.sh "$@"
      ;;
    *)
      cd "$($HOME/advent-of-code/advent.sh "$@")"
      ;;
  esac
}

This lets me run various commands like the following:

  • advent today - Move to the directory for today's puzzle.
  • advent web - Open today's puzzle in a web browser.
  • advent run \[FILE\] - Run main.go in the current directory with real input (or the supplied example file, or - for stdin).
  • advent input - Print today's input.
  • advent save - Run main.go and save its output under answers/.
  • advent check - Run main.go and compare its output against saved output.

The original puzzles and corresponding text (portions of which are sometimes quoted within comments in my solutions) are copyrighted by Advent of Code. From https://adventofcode.com/about:

Advent of Code is a registered trademark in the United States. The design elements, language, styles, and concept of Advent of Code are all the sole property of Advent of Code and may not be replicated or used by any other person or entity without express written consent of Advent of Code. Copyright 2015-2022 Advent of Code. All rights reserved.

You may link to or reference puzzles from Advent of Code in discussions, classes, source code, printed material, etc., even in commercial contexts. Advent of Code does not claim ownership or copyright over your solution implementation.

Directories

Path Synopsis
2015
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2016
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2017
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2018
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2019
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2020
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2021
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2022
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2023
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
2024
01 command
02 command
03 command
04 command
05 command
06 command
07 command
08 command
09 command
10 command
11 command
12 command
13 command
14 command
15 command
16 command
17 command
18 command
19 command
20 command
21 command
22 command
23 command
24 command
25 command
Package lib contains a random assortment of code useful for solving Advent of Code challenges.
Package lib contains a random assortment of code useful for solving Advent of Code challenges.

Jump to

Keyboard shortcuts

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