Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/knalli/aoc2024

https://adventofcode.com/2024
https://github.com/knalli/aoc2024

advent-of-code adventofcode aoc aoc2024

Last synced: 27 days ago
JSON representation

https://adventofcode.com/2024

Awesome Lists containing this project

README

        

# Advent of Code 2024 Solutions

Welcome to my solutions of [Advent Of Code](http://adventofcode.com) 2024 (AOC 2024).

A huge thanks to @topaz and his team for providing this great service.

After [multiple](https://github.com/knalli/aoc2018)
[years](https://github.com/knalli/aoc2019)
[using](https://github.com/knalli/aoc2020)
[Go](https://github.com/knalli/aoc2021), one year [Rust](https://github.com/knalli/aoc2022),
this time I will step back using
the good old Java ([again](https://github.com/knalli/aoc2023)). Needless to say, this means the latest Java 23 with enabled preview
flags. There may be usage of virtual threads, structured scopes and even
native experiments (although not part of Java itself, but an overall current theme).
We put all the s… together.

## Disclaimer

These are my personal solutions of the Advent Of Code (AOC). The code is
*not indented* to be perfect in any kind of area.
These snippets are here for everyone learning more, too.

If you think, there is a piece of improvement: Go to the code,
fill a PR, and we are all happy. Share the knowledge.

## Structure

The AOC contains 25 days with at least one puzzle/question per day (mostly there are two parts).

* Base path is the root folder with a standard Maven project. The base
package is `de.knallisworld.aoc2024`.
* Each day is a sub package named `day01`, `day02` until `day25` with
a corresponding main file
* Each day may contain additional test files (in the test dir)
* Depending on content, a day could import (exported) symbols of a (previous) day.

## Usage

For running the day `day00`

* Use your IDE, it's simpler: Run the specific day.
* CLI: just enter `export DAY=00; ./mvnw compile exec:java -Dexec.mainClass=de.knallisworld.aoc2024.day$DAY.Day$DAY`

## License / Copyright

Everything is free for all.

Licensed under MIT. Copyright Jan Philipp.