Our great sponsors
-
InfluxDB
Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
-
WorkOS
The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.
-
advent-of-code-2023
About Solutions for Advent of Code 2023, written in JavaScript using node.js (by johnbeech)
-
noulith
My noulith fork. 2023 advent of code solutions: https://github.com/tom-huntington/aoc2023 (by tom-huntington)
-
advent-of-code-2023
My javascript solutions for Advent of Code 2023 - feedback is welcome (by DCampagnola)
-
AdventOfCode
Repository to store the solutions for AdventOfCodes. 2021 in Apex, 2022 a mix, 2023 in JS, challenge accepted! (by foxysolutions)
-
advent-of-code-2023
🎄 My Advent of Code solutions in Rust. http://adventofcode.com/2023 (by timvisee)
-
advent-of-code-js
Clear, efficient and didactic solutions for the Advent Of Code puzzles, in JavaScript. (by JoanaBLate)
-
aoc-2023
Discontinued My Advent of Code 2023 Solutions [Moved to: https://github.com/AJMansfield/aoc] (by AJMansfield)
-
SaaSHub
SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives
Here's the optimized Part 2: https://github.com/rtrinh3/AdventOfCode/blob/f277486bb7f9501c208e1c70c791738bb277c5f1/Aoc2023/Day05.cs
[LANGUAGE: Crystal] Part 2 - Optimized
It runs instantly. Loads of fun again. Here is the link to to the full solution
My Day 05 on GitHub
Solution: https://github.com/abnew123/aoc2023/blob/main/src/solutions/Day05.java . Warning: this takes a good 5 minutes to run part 2, it's literally just the same code as part 1 but throwing the whole range in one at a time. Edit: warning no longer applies, part 2 is now 6ms runtime.
github
day_05.ex
Part 1
Task 2: takes about 4+ minutes to complete in Python, but when translated to Go, it takes just around 4 seconds. https://github.com/djudju12/aoc2023/tree/main/day5
Code: Day5
Day 05: GitHub
Day 05: GitHub
[LANGUAGE: Scala] GitHub
Source on Github
Program on Github.
GitHub
Part 1
“I've never written Rust in my life before AoC 2023 code”
Optimised version is here, you can look at the previous commit for this file to see the unoptimised version
Github
Code: Github
Solution - Part 1 and 2
[LANGUAGE: noulith] fork
Brute forced part 2 in a little over 2 minutes (release mode).
Here is a link for my solution
Solution
PART 1: (87.125µs) https://github.com/Lacieoz/AdventOfCode2023/blob/main/5/first/solution.go
Day five repo
code
code
Full source available on my github: Day05.scala
part 2
556/83 (Solution)
The rest is boilerplate. Here is a clear and simple (I hope) python code to implement this: https://github.com/GillesArcas/Advent_of_Code/blob/main/2023/05.py
solution Essentially brute forced part 2, but by reducing the memory used it only takes about 3 minutes to get the solution.
GitHub
Github
Part 1: https://github.com/makes/aoc-2023/blob/main/5/5_1.py
Part 1 and 2
My solution to part1 was fairly short and clean I think. For part2 it got kind of messy but at least it runs fast: https://github.com/bo-tato/advent-of-code-2023/blob/main/day5/day5.lisp
Code here
Part 1
GitHub - AoC day 5 (Python)
The code is here on GitHub.
My solution
Part 1 brute force mapping each seed
Github Link
Solution on GitHub: https://github.com/goggle/AdventOfCode2023.jl/blob/master/src/day05.jl
Github
Solution
Part 1 Part 2
Kind of proud of my solution. Interestingly it isn't that complex, though just so many numbers which can be easily swapped around xD Especially in early mornings. Curious for others' thoughts and readability ;)
A in 0.015 ms (15 μs): https://github.com/timvisee/advent-of-code-2023/blob/master/day05a/src/main.rs
GitHub Repository
hey fellas, here is day 5 solutions on js https://github.com/rezaerami/adventofcode_2023/tree/master/Day05 didn't like my solution for second part, too inefficient
Not the most efficient solution (to put it mildly), but it is a solution: Solution
Walkthrough
LongRange
Used Rusts ranges to solve this one. My basic idea for part 2 was that every stage maps the input-range to a new set of ranges and so on. At the end I get all ranges and can map to the lowest start. The code is a bit clumsy I guess, but its fast.
Day's code
Finally, I finished part 2 with the range mapping solution as well: https://github.com/cainkellye/advent_of_code/blob/main/src/y2023/day05.rs
Code
Link to full solution
Part 1 - Brute force, but was please with my parsing logic. Solved on day 5. When I realised what Part 2 needed, tried the brute force option whilst going away for lunch, but when I returned and it was still running knew that it wasn't going to be a great idea.
I'm pretty sure there's a more optimized version of creating the intervals but I was spent after thinking about this for a day. See it here.
day5
Part 2 is bfs, runs in under 10 ms on my laptop. https://github.com/wleftwich/aoc/blob/main/2023/05-seed-fertilizer.ipynb
part1/part2/combined
Anyway, here it is.
github
code on github
My solution works by slicing the maps until each range of seed IDs matches to exactly one range of location IDs. Then, I only need to check one value from each range which is a lot faster. This currently completes in about 25 ms, although there's plenty of room for improvement.
Part 1 only because I give up
[LANGUAGE: JAVA] I came up with a similar idea to the common range idea I see posted here. https://github.com/dwest62/aoc2023-day5-p2-java
Part 1
A day late to post, but here is my one-line Python solution for both parts of Day 5! q[5] has the input file contents.
Install Haskell using GHCup. In days of old installing Haskell used to be a pain, but nowadays Haskell comes with a self-isolated thing call ghcup - you install it once, and then it installs the rest of the universe in its own isolated directory that can be independently deleted or updated without affecting the rest of your system.
Part 2
GitHub - Part 1 and 2
Solution on GitHub
Solution on Github [part 2]
One solution for both parts.
Code: Github
Here's the full code: https://github.com/erikson84/aoc2023/blob/main/lib/day_five/day_five.ex
github