Skip to content

remmycat/advent-of-code-rs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Advent of Code in Rust - remmycat's solutions

Benchmarks

Benchmarks are done using criterion. The solvers always provide a solution to both parts of the day's puzzle in one go, and receive the input as an in-memory string or bytes (depending on what I preferred for that day).

Emojis reflect my feeling on the time and if it's improvable, based on intuition or other people's submissions.

Time precision depends on the variance measured during the benchmarks.

2023

Hardware: MacBook Air (13-inch, 2020), Apple M1

Day Name Time Feeling
01 Trebuchet?! 34 μs 🙂
02 Cube Conundrum 22.6 μs 😎
03 Gear Ratios 52 μs 🙂
04 Scratchcards 7.6 μs 😎
05 If You Give A Seed A Fertilizer 17.9 μs 🙂
06 Wait For It 161 ns 😎
07 Camel Cards 42 μs 😎
08
09 Mirage Maintenance 43.7 μs 🙂
10 Pipe Maze 44 μs 😎
11 Cosmic Expansion 9.5 μs 🌈
12  Hot Springs   22.4 ms 🤔
13 Point of Incidence 39 μs 😎
14  Parabolic Reflector Dish   20.9 ms 😕
15  Lens Library   65 µs 🙂
16  The Floor Will Be Lava   38.9 ms 😕
17  Clumsy Crucible 38.3 ms 😕
18 Lavaduct Lagoon 7.2 µs 🌈
19 Aplenty 82 µs 🙂
20 Pulse Propagation 9.4ms1 😕
21
22 Sand Slabs 10.9 ms 🤔

2022

Hardware: MacBook Pro (14-inch, 2021), Apple M1 Pro

Day Name Time Feeling
01 Energy Counting 21.8 μs 🙂
02 Rock Paper Scissors 3.67 μs 😎
03 Rucksack Reorganization 7.7 μs 😎
04 Camp Cleanup 34.1 μs 🙂
05 Supply Stacks 15.8 μs 😎
06 Tuning Trouble 5.9 μs 😎
07 No Space Left On Device 18.2 μs 😎
08 Treetop Tree House 210 μs 🤔
09 Rope Bridge 241 μs 🙂
10 Cathode Ray Tube 1.5 μs 😎
11 Monkey in the Middle 2.0 ms 😕
12 Hill Climbing Algorithm ~20 min2 😛
13 Distress Signal 392 μs 😕
14 Regolith Reservoir 133 µs 🙂
15 Beacon Exclusion Zone 4.28 µs 😎

2021

Hardware: MacBook Pro (13-inch, 2019), 2.8 GHz Quad-Core Intel Core i7

(Day 15 and 19, yikes…)

Day Name Time Feeling
01 Sonar Sweep 82 μs 😎
02 Dive! 277 μs 😎
03 Binary Diagnostic 1.3 ms 🤨
04 Giant Squid 6.2 ms 😖
05 Hydrothermal Venture 7.5 ms 😖
06 Lanternfish 4.9 μs 😎
07 The Treachery of Whales 3.25 ms 😖
08 Seven Segment Search 1.2 ms 🤨
09 Smoke Basin 850 μs 😎
10 Syntax Scoring 95 μs 😎
11 Dumbo Octopμs 1.69 ms 🤨
12 Passage Pathing 44 μs 😎
13 Transparent Origami 155 μs 😎
14 Extended Polymerization 30 μs 😎
15 Chiton 1.9 s 😭
16 Packet Decoder 35 μs 😎
17 Trick Shot 11 μs 😎
18 Snailfish 41 ms 🤨
19 Beacon Scanner 4.5 s 😭
20 Trench Map 10.2 ms 😎
21 Dirac Dice 4.1 ms 🤨

Footnotes

  1. This is the time when taking into account some assumptions about how the input is crafted, as the problem gets significantly more complex otherwise. The code is currently assuring that these assumptions hold true (for a big runtime toll), but I'll likely remove these checks if I go back to optimise it.

  2. via BFS, as in Big Friendly Sharpie

About

Remmy's Advent of Code solutions

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages