Giter Club home page Giter Club logo

adventofcode2023's Introduction

python package build status

Advent of Code

This repository contains my own solutions to the Advent of Code coding puzzles.

Spoiler alert!

If you don't want those puzzles spoiled for you, don't look at the code! It runs on Python 3.10+.

Requirements

The puzzle-solving code is all purely Python Standard Library stuff. The only external dependencies are optional:

  • rich, for pretty printing on the console, and
  • pillow, for rendering visualisations.

Usage

Execute advent.py at the top-level of the repository, with the year and day number.

./advent.py 2023 9

You can give the -t/--test argument to run the test case from the puzzle explanation instead of the actual puzzle, -v/--verbose to enable debug logging, or -d/--draw to output a visualisation (if the puzzle code supports that).

Visualisations

Here's a sample of some of the visualisations I generated for these puzzles:

2015 Day 18, part 1 "Like a GIF For Your Yard"

2015 Day 18 Part 1

2016 Day 8 "Two-Factor Authentication"

2016 Day 8

2016 Day 13, part 1 "A Maze of Twisty Little Cubicles"

2016 Day 13 Part 1 (BFS) 2016 Day 13 Part 1 (AStar)

Using Breadth-first search (left) and A Star (right) to solve the maze.

adventofcode2023's People

Contributors

direvus avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.