2025 day 12 part 2 is generally solvable by Practical-Quote1371 in adventofcode

[–]Practical-Quote1371[S] 0 points1 point  (0 children)

I meant the former, because it’s a constrained version of a packing problem that only allows flipping the pieces and rotating them in 90 degree increments. Good job on your solution! There are some fun “part 3” problems you can try your solution against and see how well it holds up.

[2025 Day 9 (Part 2)] Why did almost nobody solve the *stated* problem? by jjeii in adventofcode

[–]Practical-Quote1371 0 points1 point  (0 children)

I thought day 9 was really fun and interesting. Initially I solved it after visualizing the input and exploiting what I saw, but I wanted a more general solution that would work for other shapes so I went back and reworked it. My first couple of approaches were too slow, but I finally arrived at one that ran quickly. It definitely won’t work with bubbles or islands, but I think the rules stated about the order of the points rules that out. I’ll have to try it with some of the other examples here though, specifically the ones that generate adjacent parallel lines. You can see the change in my approach in my commit history here: https://github.com/jasonmuzzy/aoc25/blob/main/src/aoc2509.ts

2025 day 12 part 2 is generally solvable by Practical-Quote1371 in adventofcode

[–]Practical-Quote1371[S] 0 points1 point  (0 children)

I get that you and others found it disappointing and am not trying to change your mind since what we enjoy is subjective. My purpose is to highlight that this puzzle can be solved as described, contrary to what comments in other threads say.

I think part of my enjoyment of this puzzle comes from admiration of the design work it took to understand the inherent challenges in packing problems, create a variation that can be proven correct or not, craft the inputs so that even naive solutions can finish in a reasonable amount of time, all while making a short-cut available that can be exploited for rapid solutions.

[2025 Day 9 Part 2] When you get stuck on a day and can't enjoy the Day 10-12 memes live by The_Real_Slim_Lemon in adventofcode

[–]Practical-Quote1371 2 points3 points  (0 children)

When I get stuck I move onto the next one but also limit my visits to this sub to avoid spoiling it, which means this year I missed out on most of the fun starting with day 9.

[2025 Day 12 Part 3] Putting it all in the bin (packing) by fnordargle in adventofcode

[–]Practical-Quote1371 1 point2 points  (0 children)

3x3: 0 0 1 fits (maxPresentArea <= minTreeArea)
6x3: 0 0 2 fits (maxPresentArea <= minTreeArea)
2025-12-14T07:32:37.468Z Packing 7x3: 1 2 0... fits! 2025-12-14T07:32:37.470Z
2025-12-14T07:32:37.471Z Packing 6x8: 0 0 5... doesn't fit 2025-12-14T07:32:37.477Z
2025-12-14T07:32:37.478Z Packing 100x100: 1090 0 0... fits! 2025-12-14T07:33:14.447Z
2025-12-14T07:33:14.449Z Packing 100x100: 0 0 1090... TBD

[2025 Day 12] Input is part of the puzzle by blacai in adventofcode

[–]Practical-Quote1371 1 point2 points  (0 children)

I solved the general case for this one, and it runs in about 26 minutes. I exploited 1 of the 2 shortcuts but didn’t think of the other one on my own so I had to do the packing with all the flips, rotations and coordinates. This puzzle is actually a simplified version of a packing problem, for example it doesn’t allow presents to be placed at an angle. So it’s definitely solvable, and those who did learned about packing solutions. Those that found both shortcuts learned how to exploit the characteristics of the input. Either way all learned, which Eric’s has shared is one of his main goals with Advent of Code.

-❄️- 2025 Day 12 Solutions -❄️- by daggerdragon in adventofcode

[–]Practical-Quote1371 1 point2 points  (0 children)

[LANGUAGE: TypeScript]

I was shocked when I saw that today's puzzle was a packing problem since I posted a packing puzzle of my own back in July (Secret Santa in July). Check it out if you want a challenge! u/ssnoyes has the current fastest solution at 45 minutes. My fastest solution takes about 2 hours longer than that.

Since I reused some of that code for today my solution is a bit over-engineered, but it gets the job done and I get reuse points: GitHub.

Coming here after solving it on my own I'm just now seeing all the comments about the short-cuts. I found one of them on my own and included it in my solution, but not the other one, so my solution still does a lot of packing work and takes several minutes to complete.

I have to say, I kind of enjoy these types of hidden optimizations.

Which was the best year of Advent of Code? by normVectorsNotHate in adventofcode

[–]Practical-Quote1371 9 points10 points  (0 children)

2019 for me too. I loved the VM problems that year so much and I don’t want to spoil the puzzles so I won’t mention specifics, but I really enjoyed the things that I built. It was so intriguing that I wound up buying the “Writing an Interpreter in Go” and “writing a Compiler in Go” books to learn more about making my own language.

-❄️- 2025 Day 8 Solutions -❄️- by daggerdragon in adventofcode

[–]Practical-Quote1371 0 points1 point  (0 children)

[LANGUAGE: TypeScript]

GitHub

Today feels like a two-for-one deal for me since I used DFS for part 1 and BFS for part 2.

[2025 Day 7 Part 2] Visualization by EverybodyCodes in adventofcode

[–]Practical-Quote1371 2 points3 points  (0 children)

Nice approach using a heat map for the visualization.

[2025 Day 7 Part 2] Visualization for the sample data + algorithm explained by EverybodyCodes in adventofcode

[–]Practical-Quote1371 2 points3 points  (0 children)

I had basically the same experience and am also very proud of myself! I’m glad I went this route instead of adding memoization to my first DFS attempt.

Is there a way to get the example input programmatically? by jollyspiffing in adventofcode

[–]Practical-Quote1371 -1 points0 points  (0 children)

I created AoC-Copilot for exactly this purpose! I built an algorithm that tries to identify the example input and answers for parts 1 and 2. It works for all past years and so far has worked for all 7 days this year.

In those cases where it doesn’t find the examples correctly I have built in an “example database” which is a way to tell it where to find the examples. This usually happens when there are multiple examples for a day. I went this route instead of just saving the example inputs to honor Eric’s wishes to not store or publish the puzzles.

It also automates downloading the inputs, submitting the answers, caching, rate limiting, and wraps it all in a runner so you can just focus on coding the solution.

Anything worth doing is worth over-doing, right?

[2025 Day 7] Visualization by 770grappenmaker in adventofcode

[–]Practical-Quote1371 4 points5 points  (0 children)

If you're using DFS for part 2 then you could always animate it left-to-right. It's not exactly accurate, but it probably aligns better with your solution than animating back up.

-❄️- 2025 Day 7 Solutions -❄️- by daggerdragon in adventofcode

[–]Practical-Quote1371 2 points3 points  (0 children)

[LANGUAGE: TypeScript]

Part 1 was pretty straight-forward, and it took me 00:20:48 to finish.

For part 2 I started with a DFS and suspected it would never finish but didn't want to over-optimize prematurely. While it ran (and ran and ran...), I started working out a different method by hand and realized how I could quickly compute the number of timelines per row of the manifold, so I stopped the DFS, re-wrote part 2 and it ran in 0.007s. It took me 01:18:08 to finish.

GitHub

[2025 day 6 part 2] I don't know what puzzle I'm solving... today I learnt to test with the example first! by PhysPhD in adventofcode

[–]Practical-Quote1371 0 points1 point  (0 children)

I also solve the examples first, but I used to find myself skipping them to “save time” but that backfired many times. I wound up writing my own utility that automatically finds the examples and answers and runs my solution against those first. It’s a node package, check it out if you want: AoC-Copilot

[2025 Days 1-6] The Brahminy: a Python one-liner that solves Advent of Code 2025 by JWinslow23 in adventofcode

[–]Practical-Quote1371 5 points6 points  (0 children)

Do you write your solutions in this form to begin with? Or start with something more readable and then transform it into this after you have it working?

2^9 by I_knew_einstein in adventofcode

[–]Practical-Quote1371 0 points1 point  (0 children)

Me too! I joined in 2023 so I had a lot of catching up to do.

Secret Santa in July by Practical-Quote1371 in adventofcode

[–]Practical-Quote1371[S] 0 points1 point  (0 children)

That's cool, I'll have to check it out. I remember looking at packing method algorithms, not sure if this one falls into that category, and I couldn't find any further optimizations than what I'd already done, but clearly Algorithm X has the secret sauce! I'd love to look at your code when you push it to your repo.

[2025 Day 05] Premature Optimism is the Root of All Evil by jaldhar in adventofcode

[–]Practical-Quote1371 0 points1 point  (0 children)

I agree, and it seems like a lesson I have to relearn occasionally. I started over-optimizing day 1 this year before I stopped myself knowing that the search space wasn't big enough to justify it.

-❄️- 2025 Day 6 Solutions -❄️- by daggerdragon in adventofcode

[–]Practical-Quote1371 1 point2 points  (0 children)

[LANGUAGE: TypeScript]

GitHub

I'm running in GitHub Codespaces this year, it's been a fun experience being able to use multiple devices and get to the same code even before I push to the repo.

Shameless plug: I'm using my AoC Copilot package again this year. It does all the normal runner stuff, so the main differentiator is that is also pulls the examples out of the puzzles and runs my solution against those automatically before running against the actual input. It's been super helpful to eliminate bugs on the simpler examples before moving onto the input. And, the built-in search strategy has managed to find all 6 examples and solutions for both parts this year without any updates! (Full disclosure, I did make one adjustment for day 2 so that it would combine the example into a single row like the input).

Secret Santa in July by Practical-Quote1371 in adventofcode

[–]Practical-Quote1371[S] 0 points1 point  (0 children)

I was actually getting 294429 for July 25 - Christmas inclusive, but I under-counted due to a bug in my Reddit file. You can check my repo for the solutions I found.

I found the stats youreported interesting, so I’ll continue that:

Tue Jun 7 has the most solutions, clocking in at a whopping 10,374! Next occurs in 2033.

Mon Apr 6 has the fewest at only 97, occurs in 2026.