Skip to content

My attempts at Advent of Code in C#. Started with 2024, then working up from 2015 (next is 2022).

Notifications You must be signed in to change notification settings

Jas2o/AdventOfCode

Repository files navigation

Advent of Code

These are my C# solutions to the puzzles on https://adventofcode.com (not mine).

My goals were to complete them without external libraries and have fun along the way.

Progress

Not every year is completed yet, the majority is still skeleton template. Perhaps during future events I'll revisit some of the worst performing solutions.

  • My first year was 2024, started on December 2nd 2024, completed on December 29th 2024.
    • I did not have git running until the end to have a good record of which days I struggled with.
    • Looking at personal leaderboard, Part 2's that took over 24 hours were days: 12, 15, 16, 17, 20, 21, 22, 23 and 24.
    • Day 21 had the worst Part 1 experience for me, but was definitely the funniest to read.
    • Day 22 Part 2 has the worst runtime length.
    • Day 23 I had noted down as being difficult for me to comprehend in general.
  • 2015 was started on December 8th 2024 and completed on December 31st 2024.
  • 2016 was started on December 31st 2014 and completed on January 8th 2025.
  • 2017 was started on January 8th 2025 and completed on January 14th 2025.
  • 2018 was started on January 15th 2025, and completed on March 25th 2025.
    • Day 15 was super evil, I didn't get an accepted answer for over a week.
    • Day 17 looks innocent but compounded feelings of defeat in me, it was put on pause for over a month before revisiting from scratch.
    • Day 19 was after the hiatus, and math did not make me feel any better about returning without help.
    • Day 21 has the worst runtime length.
    • Day 22 was the second last completed, it had a lot of back and forth with code changes and website answer attempts. Suspect there's something still wrong with the code for other inputs.
    • Day 23 was more math that was beyond my abilities without help.
  • 2019 was started on Febuary 5th 2025 to distract myself from 2018, was taking it slow, completed on March 15th 2025.
    • Day 16 I could not optimize without help.
    • Day 18 was the last puzzle completed, it took a few days to optimize enough to get an answer.
    • Day 21 isn't truely solved as it has baked in shortcut for my input.
    • Day 22 required math knowledge that I would never be able to work out on my own.
    • Day 25 I didn't make solving automatic, but it was fun making the game playable and getting to the answer.
  • 2020 was started on March 26th 2025, and completed on May 11th 2025.
    • Day 10 took a while to get rolling.
    • Day 17 performs terribly. It took me a while because the similarity to 2019 Day 24 threw me off when it came to a key difference.
    • Day 19 is evil. My fault for avoiding regex for so long when I already had the pattern most of the way there.
    • Day 20 is nuts, while it took a few days it was my favourite puzzle of this year.
  • 2021 was started on May 11th 2025, and completed on July 2nd 2025.
    • Day 8 needed sleep to realise how to approach it.
    • Day 15 took time failing to reuse 2024 pathfinding until landing on reusing 2018 Day 22.
    • Day 18 was very difficult and unfortunately doesn't make use of special structure for solving part of it.
    • Day 21 was a huge demotivator.
    • Day 22 was really difficult and also around the time I was sick.
    • Day 23 still needs to be optimised.
    • Day 24 took me forever for various silly reasons.
  • 2022 was started on July 2nd 2025.
    • Day 9 was the first sign that things were about to get rough.
    • Day 13 was horrible; multiple rewrites and breaks between attempts.

Additional notes

As per rules on Advent of Code's website: inputs and puzzle text (except titles) are not included in this repo.

Each year's project should also have two folders (Input and Test) containing text files (01.txt to 25.txt). The template zip file contains blanks.

The answers to my inputs are included as comments, while useless to others simply because it's a pattern I started early on.

Some of the solutions have leftover visualisation or interactive code. I never settled on a convention to enable these so some are: variable change, uncommenting, certain console input. Potential revisit idea for a future event.

About

My attempts at Advent of Code in C#. Started with 2024, then working up from 2015 (next is 2022).

Resources

Stars

Watchers

Forks

Languages