This is my second year doing AoC and watching your videos and yours are my favorite of the people recording them because you're doing them really fast but not just sitting there in silence so I can follow along with your reasoning. It also makes me feel better when you're not just instantly writing out the right solution, but rather speed-running a lot of the mistakes I also made. I've been doing them in C# and I like to do them "properly" with classes, etc. But watching you do them last year really opened my eyes to how much of computer programming exists just inside the programmer's head. e.g. this plain array is actually a stack if the programmer just commits to only pushing/popping the first element. Or this dictionary is actually an adjacency representation of a graph. Whereas in C# I would write a full class with appropriate getters/setters, you're just manipulating the data structures inline. Very cool. I would watch any video you make! But like others I am curious about your dev environment/why you chose this over other possible setups. Otherwise, see you in a year
I'm glad you're recording these videos I can always watch after I solve the puzzle. Would be amazing to see some other competitions like everybody.codes or even solving 2015, 2016... AOC. Merry Christmas :) 🎄🎁
Congratz on the leaderboard! Today was fun, day 25 being chill day in the xmas chaos is always nice, glad it's a trend. Once I realized they don't have to fit perfectly, I just made both keys and locks int made from the 5x5 inner square- just |= shifting # as 1
Congrats on the making the leaderboard, despite recording/commenting while solving and all the LLM competition you've had! I've really enjoyed your channel and look forward to more!
Merry Christmas! Congrats on the extra points for the last day! I also forgot to quickly click the part2 link for a second. It took me 11 seconds :D still got me rank 887 -> 736. I Guess there are quite some people who missed a few problems (at the time of writing this there are 4.1k gold stars and 1.7k silver stars on day 25). I spent around 21 hours programming the solutions in total (and 4 hours of it is day21 part2 :D), I'm quite happy with that. Thanks for the videos Neil! I think many of us would watch if you made other videos. I don't have any specific ideas but I'll definitely watch them :)
Thank you for all these videos. It has been great fun watching you solve after I finished myself. I will subscribe and look out for new videos. Merry Christmas! 🎅
Merry Christmas! Would love to see a setup exploration video, in particular I’m interested how this repl-like setup that allows you to do stuff manually in the same environment where your code is ran
I expect a successor to the 1 Billion Row challenge in early janurary. Would be interesting to see how you would tackle that. (More speed of code instead of speed of coding :-) )
I'm slightly embarrassed at the 10 minutes I spent not realizing it didn't need to be a perfect fit, because I super skim read the problem and assumed the obvious, which was wrong. GGs and I'm glad u survived the army of LLMs. Maybe you could try speedrunning leetcode problems or something, idk, they aren't really 'competitive programming' though. But if u cant think of anything I look forward to AOC 2025
congrats and thanks for all your videos; some educational videos would be welcome 🙏 you looked stressed to make up this "complicated" solution ;-) def solve1(text): blocks = text.split("
") block_rows = blocks[0].splitlines() R = len(block_rows) C = len(block_rows[0]) locks = [] keys = [] for block in blocks: block_lines = block.splitlines() pins = set((r, c) for r in range(R) for c in range(C) if block_lines[r][c] == "#") if all(x == "#" for x in block_lines[0]): locks.append(pins) elif all(x == "#" for x in block_lines[-1]): keys.append(pins) else: assert False return len([1 for lock in locks for key in keys if len(lock & key) == 0])
You should totally do 2015 and 2016 on camera, maybe even a livestream? Also, I saw jonathanpaulson do everybody.codes in november, he said it was nice so maybe you should take a look at that.
This is my second year doing AoC and watching your videos and yours are my favorite of the people recording them because you're doing them really fast but not just sitting there in silence so I can follow along with your reasoning. It also makes me feel better when you're not just instantly writing out the right solution, but rather speed-running a lot of the mistakes I also made.
I've been doing them in C# and I like to do them "properly" with classes, etc. But watching you do them last year really opened my eyes to how much of computer programming exists just inside the programmer's head. e.g. this plain array is actually a stack if the programmer just commits to only pushing/popping the first element. Or this dictionary is actually an adjacency representation of a graph. Whereas in C# I would write a full class with appropriate getters/setters, you're just manipulating the data structures inline. Very cool.
I would watch any video you make! But like others I am curious about your dev environment/why you chose this over other possible setups. Otherwise, see you in a year
Neil, thanks very much for creating these videos. Really enjoyed watching your super-human speed and efficiency compared to myself.
This was my first year solving AOC and I really enjoyed your videos and explanations this year. Thank You.
I'm glad you're recording these videos I can always watch after I solve the puzzle. Would be amazing to see some other competitions like everybody.codes or even solving 2015, 2016... AOC. Merry Christmas :) 🎄🎁
Merry Christmas, thanks for your videos!
Congratz on the leaderboard!
Today was fun, day 25 being chill day in the xmas chaos is always nice, glad it's a trend.
Once I realized they don't have to fit perfectly, I just made both keys and locks int made from the 5x5 inner square- just |= shifting # as 1
Congrats on the making the leaderboard, despite recording/commenting while solving and all the LLM competition you've had! I've really enjoyed your channel and look forward to more!
Merry Christmas! Congrats on the extra points for the last day!
I also forgot to quickly click the part2 link for a second. It took me 11 seconds :D still got me rank 887 -> 736. I Guess there are quite some people who missed a few problems (at the time of writing this there are 4.1k gold stars and 1.7k silver stars on day 25).
I spent around 21 hours programming the solutions in total (and 4 hours of it is day21 part2 :D), I'm quite happy with that.
Thanks for the videos Neil! I think many of us would watch if you made other videos. I don't have any specific ideas but I'll definitely watch them :)
Thank you for all these videos. It has been great fun watching you solve after I finished myself. I will subscribe and look out for new videos. Merry Christmas! 🎅
Merry Christmas Neil! I would like to thank you for the daily videos that got me through December and helped me out at one time or another this year!
I will also start doing AOC 2015. Would love to get some help from your videos 😅
Merry Christmas! Would love to see a setup exploration video, in particular I’m interested how this repl-like setup that allows you to do stuff manually in the same environment where your code is ran
Merry Christmas mate, thoroughly enjoyed your videos this year.
merry christmas!
I expect a successor to the 1 Billion Row challenge in early janurary. Would be interesting to see how you would tackle that. (More speed of code instead of speed of coding :-) )
merry christmas Neil
I'm slightly embarrassed at the 10 minutes I spent not realizing it didn't need to be a perfect fit, because I super skim read the problem and assumed the obvious, which was wrong. GGs and I'm glad u survived the army of LLMs. Maybe you could try speedrunning leetcode problems or something, idk, they aren't really 'competitive programming' though. But if u cant think of anything I look forward to AOC 2025
congrats and thanks for all your videos; some educational videos would be welcome 🙏
you looked stressed to make up this "complicated" solution ;-)
def solve1(text):
blocks = text.split("
")
block_rows = blocks[0].splitlines()
R = len(block_rows)
C = len(block_rows[0])
locks = []
keys = []
for block in blocks:
block_lines = block.splitlines()
pins = set((r, c) for r in range(R) for c in range(C) if block_lines[r][c] == "#")
if all(x == "#" for x in block_lines[0]):
locks.append(pins)
elif all(x == "#" for x in block_lines[-1]):
keys.append(pins)
else:
assert False
return len([1 for lock in locks for key in keys if len(lock & key) == 0])
You should totally do 2015 and 2016 on camera, maybe even a livestream? Also, I saw jonathanpaulson do everybody.codes in november, he said it was nice so maybe you should take a look at that.
so 2015 was actually around a decade ago so thats impossible. Hope this helps!