« first day (23 days earlier)      last day (1115 days later) » 

00:52
Finsished!
I had it four fricking hours ago but made an off-by-one mistake somewhere
(To be fair the four hours were spent elsewhere doing other things, not working on AoC)
Anyway, time to wrap presents and watch the best Christmas movie with my family
Which is of course Die Hard
@TheFifthMarshal yeah i'm pretty sure i have that covered...
01:10
I was so worried p2 was going to modify how the instructions worked, like changing the mul ? 0s to mul ? 1s, but no it's just a trivial modification lol
Well, I still have a small chance of getting top 100 for the year, but I'd need like top 40 on d25p1
01:22
except for whatever reason my trivial modification didn't make it work lol even though my p1 ran properly...
01:36
Shouldn't for w in range(9, 0, -1): be for w in range(1 9) for part 2?
no, because a) you want smaller values to come later so they overwrite and b) it does a check to only replace n[nz] if the new value is smaller
for p1 i did range(1, 10)
Then I have no idea
also you know how your p1 ans started with 4
91297395919993 was mine, lmao
wow
mine was 49917929934999
01:45
tbf neither is within unintelligent brute-forceability
I suspect the puzzle inputs were chosen without considering their effect on the answer
i'm half trying to remember what i thought i figured out before i crashed and half getting torn to bits over last minute christmas eve plans
probably
do you know whether your attempted part 2 answer was too high or too low?
high
ah it worked this time
i am stupid
the code i sent that said doesn't work
hadn't finished running yet
What was the problem?
i found a scala solver which just bruteforces with a cache
01:51
5029/5640
mine is really not very smart... it just brute forces each block and collapses state by equal z values in between
This makes the effort I spent manually disentangling the problem and cutting its size down by a factor of 7 seem wasted
cuz i noticed x and y are reset to 0 before being used in each block
... i am sad now cuz if i just made that one observation, i think this still would've been enough to get a few points
granted, it wouldn't matter; #4 is too far ahead
i just need to make sure i don't lose #5
i have decided i will work on a proper library/system for next year and try to not care as much about leaderboard
although that might not be possible
i realized it ages ago and look where i am now lmao
01:54
rip
I suspect you could get a near-instant part 1 if you were to combine your and my approaches somehow
i think the furthest i got was realizing i worked through it wrong and need to specifically take the "B" values into account when putting something in to try to hit something congruent to 1..9 mod 26
some people just threw the input in gcc lmao
01:57
That is first do the logic to determine the needed values for the seven stages with negative x that I did, and then share state in the way you did.
@TheFifthMarshal yeah all the instructions are basic C stuff so gcc will optimize them to a much more simplified form
bruh
lmfao
That doesn't change the need to solve an equation in 14 variables
i'm still not sure i even have 7 negatives
wait no i do
fuck
what am i doing
01:58
My approach would still work if there were a different number of negatives, as long as the number of div x 26 is equal to the number of positives
@TheFifthMarshal the thing actually simplifies to something a bit different from an equations in 14 variables
to get a feel for what i need to think through i've set up an interactive prompt that doesn't actually constrain w to be within the valid range of digits so i can just match the x value whenever the fuck i want and it is neat that it doesn't especially seem like i have to specifically match it on the div 26 stages because it's still a matter of adding 0 digits instead of 1
 
3 hours later…
04:48
Mine was pretty fast, which I'm proud of
It takes like 10s to start up, since it builds a big huge array and sorts it, but then it uses some recursion and binary searching so the actual answer finding is instant
10m
Wow
My code did part 1 very slowly, but it could well have been near-instant if I had an input whose max digit started with 9
It did part 2 near instantly
Mine would've taken 140 iterations worst case
It could go digit-by-digit backwards
My approach was using some fancy logic I explained earlier to nail down 7 of the 14 digits, and then brute force the other 7. (so worst case 4,782,969 ops)
5m
There's a lot to criticize about d24, but it does have a lot of unique approaches possible
3m
Day 24 is the first part 1 that took be more than about an hour to do
04:57
i don't like that d24 has you solve the input and not the problem description but i will say that it wasn't a bad problem overall
just felt a bit less like a coding problem
AOC lore is always the same "oh no something went wrong with Santa or the sleigh get 50 stars to fix the completely unrealistic situation". Why can't we have an AOC where Santa committed tax evasion and you have to collect 50 stars to bribe the IRS to drop their investigation into Santa's financials?
@hyper-neutrino I wrote a total of 98 lines of code to solve day 24. That's definitely a coding problem
@lyxal Last year we went to a tropical island instead of saving Christmas
04:59
well ofc it required coding but like the majority of the work felt like it went into manually handling the input
not that that's objectively bad.
anyway. last day, glhf everyone
i missed a fucking 1-off
(and wow, today was much easier than anything in the past week)
05:09
93/75
i am a fucking idiot
both for missing the oneoff and because i wasn't actually following the spec correctly for one very tiny reason
also wow how did i get 18 ranks from p1 to p2 lmfao
anyway, my #5 was secured today
Probably a lot of people were unable to do one or more of the hard problems
oh fuck i forgot about that
but still did day 25
yeah, right, probably d24 got a lot of people that couldn't get the 50th
I'm one of them
05:10
disappointed in my last few days but not in my overall performance. GG
i set my sights on top 10 and got top 5 so, i can't be upset with that overall :)
Now, if only I can do Day 19 and get the last two stars
oh that one...
i spent 44s on p2
reading is hard
rip
ah. yeah i've done this before so i knew what it'd be, but yeah i imagine some people spent a while looking at p2 before realizing they should just click the button
Somewhat surprisingly, Day 19 did not lose more people than Day 18
05:15
huh, interesting
also yeah this year's ascii art was a bit not as great as the ones from previous years at least IMO
¯\_(ツ)_/¯
Finished!
I had it working 5m ago but was running it wrong while debugging
So I thought I had an issue I didn't have
Well, AoC is over, so I can finally have a healthy sleep schedule
5
9/- woot
First <=10 rank
oh hey, nice
my issue was i didn't reset the hitbox check after the east cells moved
anyway, literally just loaded the cucumbers into two sets, lol
05:35
I used roughly the same code twice, and just transposed the array before and after
ah
that'd honestly probably be equally equivalent cuz checking for collision on an array is O(1) bc random access and in a set is also O(1) bc set
I hate JS's modulo operator, I lost a few minutes due to (i - 1) % c.size being negative sometimes
I know it's that way in C/Java, but Python's is just so much more convenient
ah :/
wait, -1?
For changing > to .
oh right
05:40
I'd share my code but it's ugly enough it'd be negligent to curse other people with its cursedness
I was really not ready for tonight to be so easy
@tjjfvi nice
yeah, I'm glad tonight wasn't too hard
386/1382 because I actually just picked up a pencil and did yesterday after tonight’s part 1 lmao
Literally committed a PDF scan to my repo
Feels good to finally do all 50
I wonder if mod 26 is just a coincidence, or if there's some sort of hidden message
Probably a red herring tbh
05:49
Guys, I found it! The secret message was kmkmlkkpnnszwm :p
4
also the best part of my rank today is i did try to finish yesterday before midnight but i was just too dead tired until i finished part 1
Come to think of it now I need to look at y’all’s code for yesterday because I literally did not use a program for anything but checking my work
Oh yeah I almost forgot how long I ate shit on today because I forgot about operator precedence in Python for like the fourth time
I was doing x+1%w
There should be both a % and a mod operator, with mod having looser precedence
05:59
And took like two minutes to add enough prints to tell that my coordinates were just ducking exploding
*fucking
thank you for the clarification
very cool
Until then I thought my problem was with the nothing moved check so I completely replaced it
@TheFifthMarshal oh yeah you know how i still have a brute forcer running
My solution started with 2
06:20
just got an aoc shirt lmao
06:41
Today looks quite easty but I've kinda given up
 
5 hours later…
11:16
so it's finally over huh
gratz to all the insane mfs who got all 50 stars

« first day (23 days earlier)      last day (1115 days later) »