Skip to content

Complete 2022 to 2015 entries for the annual Advent of Code challenge, written in concise idiomatic functional Scala.

License

Notifications You must be signed in to change notification settings

maneatingape/advent-of-code-scala

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advent of Code tests-badge

Complete 2022 to 2015 entries for the annual Advent of Code challenge, written in concise idiomatic functional Scala.

Features

As far as possible, each day's solution embraces the following approaches:

  • Self-contained within a single file, depending only on the standard Scala library.
  • Immutable data structures, using copy-on-write to update.
  • Pure functions with side effects, such as printing to the screen, restricted to a single main method.

The minimal SBT project provides:

  • Straightforward consistent layout of code, resources and tests.
  • Unit test coverage based on the sample input.
  • Continuous integration using GitHub Actions.

Years

2022

Day Problem Solution
1 Calorie Counting Source
2 Rock Paper Scissors Source
3 Rucksack Reorganization Source
4 Camp Cleanup Source
5 Supply Stacks Source
6 Tuning Trouble Source
7 No Space Left On Device Source
8 Treetop Tree House Source
9 Rope Bridge Source
10 Cathode-Ray Tube Source
11 Monkey in the Middle Source
12 Hill Climbing Algorithm Source
13 Distress Signal Source
14 Regolith Reservoir Source
15 Beacon Exclusion Zone Source
16 Proboscidea Volcanium Source
17 Pyroclastic Flow Source
18 Boiling Boulders Source
19 Not Enough Minerals Source
20 Grove Positioning System Source
21 Monkey Math Source
22 Monkey Map Source
23 Unstable Diffusion Source
24 Blizzard Basin Source
25 Full of Hot Air Source

2021

Day Problem Solution
1 Sonar Sweep Source
2 Dive! Source
3 Binary Diagnostic Source
4 Giant Squid Source
5 Hydrothermal Venture Source
6 Lanternfish Source
7 The Treachery of Whales Source
8 Seven Segment Search Source
9 Smoke Basin Source
10 Syntax Scoring Source
11 Dumbo Octopus Source
12 Passage Pathing Source
13 Transparent Origami Source
14 Extended Polymerization Source
15 Chiton Source
16 Packet Decoder Source
17 Trick Shot Source
18 Snailfish Source
19 Beacon Scanner Source
20 Trench Map Source
21 Dirac Dice Source
22 Reactor Reboot Source
23 Amphipod Source
24 Arithmetic Logic Unit Source
25 Sea Cucumber Source

2020

Day Problem Solution
1 Report Repair Source
2 Password Philosophy Source
3 Toboggan Trajectory Source
4 Passport Processing Source
5 Binary Boarding Source
6 Custom Customs Source
7 Handy Haversacks Source
8 Handheld Halting Source
9 Encoding Error Source
10 Adapter Array Source
11 Seating System Source
12 Rain Risk Source
13 Shuttle Search Source
14 Docking Data Source
15 Rambunctious Recitation Source
16 Ticket Translation Source
17 Conway Cubes Source
18 Operation Order Source
19 Monster Messages Source
20 Jurassic Jigsaw Source
21 Allergen Assessment Source
22 Crab Combat Source
23 Crab Cups Source
24 Lobby Layout Source
25 Combo Breaker Source

2019

Day Problem Solution
1 The Tyranny of the Rocket Equation Source
2 1202 Program Alarm Source
3 Crossed Wires Source
4 Secure Container Source
5 Sunny with a Chance of Asteroids Source
6 Universal Orbit Map Source
7 Amplification Circuit Source
8 Space Image Format Source
9 Sensor Boost Source
10 Monitoring Station Source
11 Space Police Source
12 The N-Body Problem Source
13 Care Package Source
14 Space Stoichiometry Source
15 Oxygen System Source
16 Flawed Frequency Transmission Source
17 Set and Forget Source
18 Many-Worlds Interpretation Source
19 Tractor Beam Source
20 Donut Maze Source
21 Springdroid Adventure Source
22 Slam Shuffle Source
23 Category Six Source
24 Planet of Discord Source
25 Cryostasis Source

2018

Day Problem Solution
1 Chronal Calibration Source
2 Inventory Management System Source
3 No Matter How You Slice It Source
4 Repose Record Source
5 Alchemical Reduction Source
6 Chronal Coordinates Source
7 The Sum of Its Parts Source
8 Memory Maneuver Source
9 Marble Mania Source
10 The Stars Align Source
11 Chronal Charge Source
12 Subterranean Sustainability Source
13 Mine Cart Madness Source
14 Chocolate Charts Source
15 Beverage Bandits Source
16 Chronal Classification Source
17 Reservoir Research Source
18 Settlers of The North Pole Source
19 Go With The Flow Source
20 A Regular Map Source
21 Chronal Conversion Source
22 Mode Maze Source
23 Experimental Emergency Teleportation Source
24 Immune System Simulator 20XX Source
25 Four-Dimensional Adventure Source

2017

Day Problem Solution
1 Inverse Captcha Source
2 Corruption Checksum Source
3 Spiral Memory Source
4 High-Entropy Passphrases Source
5 A Maze of Twisty Trampolines, All Alike Source
6 Memory Reallocation Source
7 Recursive Circus Source
8 I Heard You Like Registers Source
9 Stream Processing Source
10 Knot Hash Source
11 Hex Ed Source
12 Digital Plumber Source
13 Packet Scanners Source
14 Disk Defragmentation Source
15 Dueling Generators Source
16 Permutation Promenade Source
17 Spinlock Source
18 Duet Source
19 A Series of Tubes Source
20 Particle Swarm Source
21 Fractal Art Source
22 Sporifica Virus Source
23 Coprocessor Conflagration Source
24 Electromagnetic Moat Source
25 The Halting Problem Source

2016

Day Problem Solution
1 No Time for a Taxicab Source
2 Bathroom Security Source
3 Squares With Three Sides Source
4 Security Through Obscurity Source
5 How About a Nice Game of Chess? Source
6 Signals and Noise Source
7 Internet Protocol Version 7 Source
8 Two-Factor Authentication Source
9 Explosives in Cyberspace Source
10 Balance Bots Source
11 Radioisotope Thermoelectric Generators Source
12 Leonardo's Monorail Source
13 A Maze of Twisty Little Cubicles Source
14 One-Time Pad Source
15 Timing is Everything Source
16 Dragon Checksum Source
17 Two Steps Forward Source
18 Like a Rogue Source
19 An Elephant Named Joseph Source
20 Firewall Rules Source
21 Scrambled Letters and Hash Source
22 Grid Computing Source
23 Safe Cracking Source
24 Air Duct Spelunking Source
25 Clock Signal Source

2015

Day Problem Solution
1 Not Quite Lisp Source
2 I Was Told There Would Be No Math Source
3 Perfectly Spherical Houses in a Vacuum Source
4 The Ideal Stocking Stuffer Source
5 Doesn't He Have Intern-Elves For This? Source
6 Probably a Fire Hazard Source
7 Some Assembly Required Source
8 Matchsticks Source
9 All in a Single Night Source
10 Elves Look, Elves Say Source
11 Corporate Policy Source
12 JSAbacusFramework.io Source
13 Knights of the Dinner Table Source
14 Reindeer Olympics Source
15 Science for Hungry People Source
16 Aunt Sue Source
17 No Such Thing as Too Much Source
18 Like a GIF For Your Yard Source
19 Medicine for Rudolph Source
20 Infinite Elves and Infinite Houses Source
21 RPG Simulator 20XX Source
22 Wizard Simulator 20XX Source
23 Opening the Turing Lock Source
24 It Hangs in the Balance Source
25 Let It Snow Source