Franco Calvo's Avatar

Franco Calvo

@francocalvo

Data Engineer @ Draftea

81
Followers
846
Following
21
Posts
15.11.2024
Joined
Posts Following

Latest posts by Franco Calvo @francocalvo

Day 13 - Advent of Code 2024

Sadly, too easy as I read in reddit 'Cramer' and the solution was set. I don't know why my first though was 'Ajá, Dijkstra!' Lucky I didn't do it lol

AoC 2024 - Day 10
Part 1 time: 10µs
Part 2 time: 13µs

I just completed "Claw Contraption" - Day 13 - Advent of Code 2024 #AdventOfCode

13.12.2024 22:21 👍 6 🔁 0 💬 0 📌 0

I came up with the idea of counting corners quickly, so "easy" in that regard. But implementing it? Hard and buggy :/

12.12.2024 23:08 👍 0 🔁 0 💬 0 📌 0

I mean't it wasn't hard.
I just rewrote my idea with clear names instead of convulted offsets and it came out ok...

12.12.2024 22:53 👍 1 🔁 0 💬 0 📌 0
Day 12 - Advent of Code 2024

Hated this with a passion...
It was _hard_, but so error prone with all the ifs that it took hours...

AoC 2024 - Day 11
Load time: 664µs
Part 1 time: 8ms
Part 2 time: 14ms
Total time: 23ms

I just completed "Garden Groups" - Day 12 - Advent of Code 2024 #AdventOfCode

12.12.2024 22:52 👍 7 🔁 0 💬 2 📌 0
Day 11 - Advent of Code 2024

Brute force first, add memoization later. Works like a charm!

AoC 2024 - Day 10
Load time: 121.041µs
Part 1: 209412
Part 1 time: 1.052292ms
Part 2: 248967696711068
Part 2 time: 24.946542ms

I just completed "Plutonian Pebbles" - Day 11 - Advent of Code 2024 #AdventOfCode

11.12.2024 17:26 👍 2 🔁 0 💬 0 📌 0
Day 10 - Advent of Code 2024

Easy peasy!

I solved the second part by error while doing the first! So it was faster than I thought. Now I'm caught up!

Load time: 5ms
Number of paths: 760
Part 1: 177µs
Number of ratings: 1764
Part 2: 129µs

I just completed "Hoof It" - Day 10 - Advent of Code 2024 #AdventOfCode

11.12.2024 03:19 👍 3 🔁 0 💬 0 📌 0

I just took the problem representation, created a struct for group and length, and reordered it :)
Inserting and keeping an index isn't fun, huh?

11.12.2024 02:24 👍 0 🔁 0 💬 0 📌 0
Day 9 - Advent of Code 2024

This took me a while, as I first understood that I had to optimize more.

AoC 2024 - Day 9
Load time: 1.6ms
Sum: 2867277363955
Part 1 time: 543µs
Sum2: 6381624803796
Part 2 time: 98ms
Total time: 100ms

I just completed "Disk Fragmenter" - Day 9 - Advent of Code 2024 #AdventOfCode

11.12.2024 02:22 👍 3 🔁 0 💬 1 📌 0
Day 8 - Advent of Code 2024

Not hard but the description was a bit convulted.

AoC 2024 - Day 7
Load time: 295.834µs
Antinodes: 280
Part 1 time: 142.833µs
Antinodes: 958
Part 2 time: 222.084µs

I just completed "Resonant Collinearity" - Day 8 - Advent of Code 2024 #AdventOfCode

10.12.2024 02:36 👍 2 🔁 0 💬 0 📌 0
Day 7 - Advent of Code 2024

Easy!

AoC 2024 - Day 7
Load time: 1.917291ms
Part 1 time: 1.412916ms
Calibration part 1: 7885693428401

Part 2 time: 33.884417ms
Calibration part 2: 348360680516005

I just completed "Bridge Repair" - Day 7 - Advent of Code 2024 #AdventOfCode adventofcode.com/2024/day/7

08.12.2024 18:49 👍 5 🔁 0 💬 0 📌 0

AoC 2024 - Day 6
Parsing time: 993.583µs
Part 1 took: 896.542µs
Part 2 took: 766.808708ms
Total time: 767.838667ms
Visited: 4580
Loops: 1480

08.12.2024 17:20 👍 0 🔁 0 💬 0 📌 0
Day 6 - Advent of Code 2024

I just caught up! Couldn't work on this yesterday :/

Was there a non brute force for the second part? I did this: for each visited place (first part) I added an obstacle and checked if it formed a loop

I just completed "Guard Gallivant" - Day 6 - Advent of Code 2024 #AdventOfCode

08.12.2024 01:06 👍 4 🔁 0 💬 1 📌 0

Yeah, excellent. It's really not *that* different from what I did! I implemented a very hacky and inefficient sort function.

I don't know why the word 'sort' didn't make me think of using the std sort function. I'm just learning Go with AoC 😅

05.12.2024 17:50 👍 2 🔁 0 💬 0 📌 0

Also, good idea on sorting the update first and checking after. It would reduce one pass over the input.

05.12.2024 17:47 👍 1 🔁 0 💬 0 📌 0

Hey! I love that your are making blogs for the solutions. Is the 1ms for the complete input, or the sample test input?

05.12.2024 17:42 👍 0 🔁 0 💬 2 📌 0

I know I could've done it a bit differently, moving the conflicting item one cell before the conditioning cell without changing the later. This would've save me a few cycles.

05.12.2024 16:15 👍 0 🔁 0 💬 0 📌 0

What I did for part two was:
1. Create three aux data structures to hold the incremental results.
2. When I found an issue, I switched values (X|Y to Y|X) for the conflicting parts, and resumed computing from lower position.
I had the partial results, so I didn't need to restart for each change.

05.12.2024 16:14 👍 0 🔁 0 💬 1 📌 0
Day 5 - Advent of Code 2024

Second part was a bit tricky. Solving both parts took 73ms to run on Go (I know, you can't compare, diff hw), but I'd love to know what an *efficient* solution would look like

I've completed "Print Queue" - Day 5 - Advent of Code 2024 #AdventOfCode adventofcode.com/2024/day/5

05.12.2024 16:10 👍 1 🔁 0 💬 3 📌 0
Day 4 - Advent of Code 2024

I think this is pretty brute-forcey. If anyone has a good algo for this I'd be happy to read the code!

I just completed "Ceres Search" - Day 4 - Advent of Code 2024 #AdventOfCode adventofcode.com/2024/day/4

04.12.2024 18:07 👍 1 🔁 0 💬 0 📌 0
Day 3 - Advent of Code 2024

This is getting a bit funnier! :)
I've completed Part One of "Mull It Over" - Day 3 - Advent of Code 2024 #AdventOfCode adventofcode.com/2024/day/3

03.12.2024 22:17 👍 1 🔁 0 💬 0 📌 0

I just completed "Historian Hysteria" - Day 1 - Advent of Code 2024 #AdventOfCode adventofcode.com/2024/day/1

01.12.2024 23:26 👍 2 🔁 0 💬 0 📌 0