#advent-of-code
1 messages Β· Page 35 of 1
I was expecting an increase in the rate of change of difficulty to go along with the shortening to 12 days
If we take these graphs as a proxy for difficulty: https://www.maurits.vdschee.nl/scatterplot/, it seems like most years follow the trend of "mostly flat and then erratic at the end". There are only a few where the curve is a bit smoother.
I suppose my expectations were shaped by 2024 mostly
same
https://aoc.xhyrom.dev/
day1 part2 also stuck out for a lot of people
Is there an AoC DSA book? That would be very useful. This is my first AoC and itβs been a great re-introduction to raw, low level DSA stuff. Iβve learned a lot by reading other peopleβs solutions. I broke out my old DSA textbooks and realize they donβt cover a lot of the things that are required in some of the AoC challenges, like computational geometry and Disjoin Set Union, etc. Whoever is running AoC should come out with a series on DSA that are useful in these problems.
AoC is run by Eric Wastl. He's semi-active on the AoC subreddit. AFAIK he's not on this Discord server.
It's fairly easy to get people to share was DSAs they've used for any given problem, though not everyone solves them the same ways.
Some common ones off the top of my head are traversal algos, such as BFS, DFS, PQs.
Then as Isaac stated, each person solves it differently.
What could be useful is looking at other people's solutions and seeing how they approached it
Dijksta π
and then the zillion times that people use Dijkstra when they don't need to
and get the overhead of a priority queue
what is pq
priority queue?
Same. They've kinda grown on me.
PQ is a traversal algo?
Pijkstra's Qlgorithm
shhh, it was late
indeed. this π
yeah okay
(use heapq)
idk the difference actually
since i dont know the one you sent
PriorityQueue is a "higher level" of abstraction but does provide something similar to heapq.
heapq gives you helper functions to use an array as a heap. PriorityQueue is a class with helper methods (and is thread safe).
heapq is a lot faster i think
Well, not needing to do thread-safe locking helps π I suspect heapq is faster. I'm not sure about "a lot"
idk i just have a vague memory of some solutions w/ heapq passing while TLEing w the thread safe version
I don't understand the problem and goal of the day 8 π©
p1? p2?
You got a whole bunch of points. You want to draw connections between pairs using a minimum length line. Draw the 10 shortest lines possible. Count "groups".
do we need same count of junctions to count of line??
No
Well. p1 or p2?
For p2 you ||want to connect all junctions into one circuit which means a connection/line to/from each junction which means a minimum of junctions/2 lines to just pair them.||
I suppose the way to ||connect n points with the fewest lines would be n-1 lines||
not even finished on p1 π©
p1 tells you the exact number of lines to draw
It's part of the instructions
Still don't understand
The first sample it doesn't
The example says 10 connections. The last paragraph says to use 1000.
(for the real input)
Ohhh so with a given wires, we should group the points that are closer together???
Each point can have only 1 wire???
Nvm "connecting pairs"
pick the 2 closest points, if they are not connected yet then connect them
for p1 do this 1000 times (10 for the example input)
What if one of the point is alr connected somewhere
Do nothing right??
if the points are already connected somehow you don't connect them
E.g. if you already have connections A-B and A-C you can't add B-C
because you can already reach C from B
Wait sooo, it's allowed if only one are alr connected but not if both have connections???
if one is reachable from the other
So I need to create some sort of set of set ._.
i.e. "can you follow connections to get from one to the other?"
Ohhh I got it thanks
some sort of set yes
there is a specific structure that is made for exactly this kind of tracking of connections/reachability
Just thinking... If A is closer to B and C is closer to A why would C try to reach B???
You're asked to try to make connections based on the distances between points
B and C might be the next closest pair to try to connect
e.g. consider
...........
.A.B.....D.
.C.........
...........
the order of pairs of distances would be A-C, A-B, B-C, B-D, A-D, C-D
I alr realized that
A-C adds a connection, A-B adds, B-C doesn't, B-D adds, the rest don't
But next question... How would you get more than 1 circuit if you just connect the closest junction that's not alr in the same circuit??
You would get 1 circuit if you try to connect everything
Cus eventually you can reach the other circuit
in the intermediate states you have multiple circuits though
which is the point of p1
Just realized you can't eventually makes sure every circuit to be connected cus you have limited wires lol
for p1 it's not the wires that are limited
But the number of pairs you try to connect
isn't that equivalent? 
I guess it depends on how you interpret the "nothing happens" text. the pairs where "nothing happens" still count towards the limit, right?
if it was limited number of wires I don't even need to compute anything to know the answer
yes it does count
you could think of "nothing happens" as "you do join them even though they're in the same circuit, but no changes happen to the DSU of circuits"
I guess
Maybe I'm too MST brained
considering this is literally ||Kruskal's algorithm||
This sounds correct???
||```0,sort the points
1,Pick the closet possible nodes and connect
2,Do the 1 untill you ran out of wires
3,pick the 3 largest group
4,multiply the count of each group
@cyan sleet ??
That's for p1
Right
Yeah ok, maybe this is how the problem is actually phrased
I did not really read the flavor text :P
Just enough to go "oh, this is ||Kruskal||"
The entire question from start to beginning is screaming ||kruskals||
Are there AoC completionist roles this year?
oooo there are!!
sorry if I missed this in some FAQ but how do I snag it? For the first time ever I've gotten through to the end :D
Day 6 Part 2 is pretty confusing. I'll figure out, but it is
You have to link your Discord username with your AoC username
You use the &aoc link command in #aoc-bot-commands
And then wait 15 minutes
assuming you parse the input appropriately, the only real difference between p1 and p2 should be ||a transpose||
||the unfortunate part is that the easy way to parse p1 kinda cooks you π ||
thank you :>
is there any verification? or can anyone claim to be anyone but it's just a bit sad to pretend to be someone else
no
I think the assumption is you link your (aoc) username once u join the lb so someone can't link it to their discord acc
you could always dm modmail if that happened to you ig?
nope, i'm all good, more just a point of curiosity
but ty!
wooo im all pretty and pink now
Yeah, if we do have an issue of someone claiming someone else's name we have the ability to blacklist that person entirely from the completionist role
Day 6 is pretty much ||Advent of Parsing|| but that's my favourite type
οΌaoc link kutiekatj7
some years for at least the first week or so, yes
This year not a chance, too busy and year sucks too hard
reasonable
AOC does take its toll
I am thankful it's only 12 days
I could not have a hope in hell of finishing
but with 12 I can drive myself over the line by pushing myself on a few difficult puzzles
with the 25 day ones, by the time I get past day 16 or so I really lack that energy to do it
I'd just do what I like and can, AoC isn't that important. Coding is for fun for me.
I do get that, but I like to complete the year, and I like to be able to keep up as much as I can with the various days
does day 12 part 2 'exist'?
||No, there's always only one part for the last day. I think you don't get the last star until you complete all the others though.||
what's the requirement for the AoC role again?
link your Discord account to your AoC account
and finish all the puzzles before January
How long does the AoC completion badge last?
Until mid to late January
yipeee
i'm particularly proud of day 9 part 2
this is the first time i've done all stars in a given AoC year
oh hey it's santa
Finally am being able to work on Day 6 part 2
Being able to see the layout is great
What's that?
&aoc link cod1r
You have linked your Discord ID to aocleaderboardnamegoeshere.
&aoc link cod1r
Your linked account has been changed to cod1r.
I finished AoC 2015 and started on AoC 2016 now
It's starting to get kinda addictive
It's also fun to gradually break out general utilities into a reusable library
That provides benefit across days and years
wait is there only 12 this year?
Yep
&adventofcode stats <- are these based on all the people in the Pydis AoC leaderboard, even if they didn't participate this year?
clearly so, right?
if it was just people who did participate then the day 1 star percentage would be much higher
like almost 100 id assume, who starts from day 2?
Feels like it'd be more interesting numbers if it only included people who have completed at least one star.
yeah we should have an option for tht
Lots of the people on that list are probably not even active.
you can use d1p1 number as a pretty good heuristic
and use that to normalise the rest
its not terribly fun but its doable
if we have the repo for the bot public, i could put in a PR
okay it is public
might do that later then
okay its this
gotta poke around to find out how exactly to find 'number of users who actually did anything'
so im gonna procrastinate it to later
but doable
Screenshot of G'MIC display, I can see arrays and so on.
which day is it?
d9p2
who do i need to contact to get the pink 'completed AOC' role? proof of completion is here
To get it, you need to link your discord account to your account name of the Advent of Code Leaderboard via &aoc link aocleaderboardnamegoeshere. It's automatically assigned every ~15 minutes or so.
ah, thanks!
&aoc AlexanderJCS
&aoc link AlexanderJCS
You have linked your Discord ID to AlexanderJCS.
youll get it eventually ig
It should've happened by now, I think? But I don't know how the bot works.
i don't care that much if i don't get it but i do think it's peculiar
check &aoc lb to see if it picks up your stats
&aoc lb
You are not allowed to use that command here. Please use the #aoc-bot-commands, #sir-lancebot-playground, #bot-commands channel(s) instead.
alright then
oh wait
i need to join the python private lb
because public lb doesn't exist anymore
rip
π’ I donβt think Iβm going to be able to finish part 2 for 9 & 10, and I still have no idea how to start day 12. I had never even heard of Integer Linear Programming before last week. π
hi
@cloud flower π
||Day 9 part 2 and day 12 don't require any kind of special algorithm to solve. Day 10 is tough without an ILP solver, but you can start by learning how linear programming works. There are intros on youtube that don't require any advanced math, for example.||
it's ok to treat this as an educational experience, either google/chatgpt questions, or ask for hints. It's better to get help solving it and learn then to not bother. After you have a working solution you can probably even tinker with it a little to see how it works and get a better understanding.
||The ILP one really is "here's an ILP problem, here's tools for solving that, can you code it"||
The others might just be more about hints about certain common algorithms.
@next pumice I've figured out a metric for 2025, and updated my difficulty estimation chart
what is it
interesting, no extreme
insane got cut off, then extreme
I used time for multiple solutions to be posted to adventofcode's solutions megathread.
it's not perfect, but will do.
seems like it gets easier and easier within the years
thats pretty neat
your equations might be off though
the time an answer is posted isn't the time it got sent
but there might be a more or less constant time between sending it and posting abbout it
if there are a lot of posts
it's close enough, I don't think there is minutes of extra time added.
um i guess u're right
i remember someone saying 9 and 10 are hard
so it fits well in that regard as well
it's mostly just to be a rough estimate for comparing problems against each other, so as long as the same metric applies it's a reaonable guess.
the earlier years people were still figuring out aoc so I think the times were longer.
i just thought the same thing lol
what i also thought is that its not really insane
its the first ever posted puzzle
pffff, that's not bad
it took time because aoc didn't exist until that exercise
(if the calculation is time based)
the original metric was time for the leaderboard to be filled.
also hard this year might be extreme last year
uh so pretty much time based
the first one to get into the leaderboard?
the last one.
i see
I wanted to mitigate for the fastest scores being aberations. π
same thing though
if there are less people it takes longer for it to get filled
as years moved on puzzles would get solved more quickly, since more participants
extreme difficulty in 2020 might be insane in 2017 or something
well, interesting
i'll go to eat now
I think it's not quite that bad. participation numbers grew after the first year, but top 100 out of 50,000 vs top 100 out of 500,000 is not going to be that bad as a relative value.
the question is if it was 50000
^
i think when it started i doubt it had more than a 1000 participants
and it started in 2015
but i dont really know the statistics
2015 Day 1 is a damn joke
this was my answer:
__main__:
it input.txt
fill. >begin(t=0;);t+=i==(_'(')?1:-1;t==-1;end(print(t););
e {yM+1}
i honestly didn't hear about aoc bbefore like 2023
i heard about it from this server
and this year i saw many references of aoc
lol, are these based off of geometry dash demon difficulties
This is actually very easy to answer and also look up.
Eric Wastl originally planned for 70 people to participate. By midnight 81 people were signed up. Within 12 hours, it increased to 4,000. By the end of the month it was 52,000.
spoilers!
yeah I think I need to go back and retrofit day 1.
maybe other days
Kindof awesome numbers really.
want a fun kinda related anecdote?
back in the day (1993), magic the gathering went to gencon virtually unheard of, bringing more than enough product to last the event, figuring if enough people tried it out it they might talk about it when they got home.
of course they sold out of the material they had available day1.
day 2, the lady that had been collecting the money failed to show up!
So they went looking for her.
...and found her passed out in her hotel room sleeping on a giant pile of cash.
i think that another interesting metric could be the average time gap between answers
the more participants the lower the average gap
The difficulty of the problem is more of an indicator with large or short differences in time
if its a hard problem it will take longer and the gaps would be bigger, that's true
but if 1 problem took 1 hour in average in 2016 and a different problem took 1 hour in average in 2017
it's more likely that in 2017 the gaps were smaller, because more people participated at it
the gaps gives u an indication of how many people participated
I don't think the assumption that the differences in gaps is due to participation is one you can or should make confidently
I should do spoilers next time, but I don't think anyone can read it besides myself here.
Finally. It took days of trying to figure out and refine algorithms, but I managed to solve Day10 part2. (edit: without looking up the algorithm)
Well, it took ~2 minutes to run (benchmark is 10 seconds), on rust release mode while using multithreading, so there's room for improvement. (especially since I initially planned to complete all 12 days in Haskell this year)
Now I just have to figure out some edge cases in day09 part2 by Dec 25 and I'll have completed the year before my self-imposed deadline.
The first ever AoC problem was Insane level? Wow, what a way to scare away your participants. lol π΅βπ«
I heard about it for the first time about 3 weeks ago, from this server.
I don't think it's particularly hard, I think it was just that there weren't a lot of people doing the puzzles at that time.
Since, y'know, nobody had done any before.
it was a bad metric, really it should be classed as an easy
I've gone back and reclassified all of 2015
Oh yeah 2015 day 22 is the wizard rpg one, right?
I did that one just a few days ago and my solution is like 400 lines
I haven't done it yet, but now I want to. I need to find the time to go back and do all of 2015.
Well now that I know there's a 10 year backlog of these, I have a new hobby for a while. Until I get bored. Dumb ADHD brain. lol
is insane > extreme
I think so, assuming the color range corresponds to the EM spectrum.
How do I get the completionist role?
You complete all the puzzles and you link your account
join a PyDis leaderboard (you can get an invite link by running /aoc join in #aoc-bot-commands) then link your Discord account to your AoC account using &aoc link youraocusername again in #aoc-bot-commands
Thanks
yes. extreme is "top 100 finished in under 80 minutes" insane is "top 100 took over 80 minutes to finish"
the original portrait version of the chart had a key, I cut it for the landscape view to make the image smaller for discord.
200 for me
I left some of my old "strategies" in there that I didn't end up using for the solution just cause it was fun to write
I could probably golf it down a lot
Mine isn't exactly golfed, but it's a fun eval horror
Well I just have day 10 part 2 to do. And I know that I can just use a ILP solver from a library like scipy, but I first want to learn about ILP just to understand how it solves this problem. But before I even do THAT, I'm going to experiment and see if my AI Agent can code a correct solution from only the AoC instructions! It solved for the test data, it's having problems with the prod data, which keeps timing out. So it keeps modifying code and trying again. We'll see if it can actually do it or not.
Lol it reports success, but what it did was stop trying to run the prod data. Instead it just runs the test data and reports success. CHEEKY! That's like when a jr. dev comments out a failing test because they can't figure out why it's failing. π
Note, it's possible to solve it without ||spoiler ILP|| too π
The extreme is kinda scary.....
Sounds like classic AI to me!
Right. That's why we can never put AI in control of anything important. Someday, one of them might decide the solution to world hunger is just to eliminate humans. Problem solved, right? Plenty of food now.
OMG, so my AI now tells me "I can't verify the solution because it keeps timing out. Can YOU run it for me and see if it works?"
π€¦
FYI - the author of AOC flat out recommends NOT to use AI on his puzzles
I still use it where I need some direction on where to go next and would probably not get there on my own - but I would not recommend having the AI write the code out
^ same for me
I don't use AI to solve these because
#1 I'm not "competitive" in this space, so solving it first isn't a goal,
#2 If I did use AI to solve the problem first people would naturally ask me to explain how I solved it, and if I just used AI without even understanding the problem it would be obvious I cheated and everyone would make fun of me and that is the WORST. THING.
#3 I'm trying to learn to be a better problem solver so I want to understand the problem and a possible solution to the problem. So I need to put in the work and struggle first. After I have done this, I can look at other people's solutions or have AI write something for me so I can compare my solution to these and increase my exposure to different methods and techniques for solving this kind of problem.
#4 AI is not particularly suited for these kinds of problems unless it's a well known problem. AI isn't good for coming up with new solutions
But I am using AI now as a test of my AI Agent to see if it can solve this problem with the same instructions as I have. So I'm not using AI to solve the problem, I'm using the problem to test AI.
||LP|| is basically "||optimize this linear function subject to these constraints||" ||ILP|| is if you only allow ||integer valued solutions||
the latter is a lot harder
Wow. I thought using only using ||integers|| would make it easier
P vs NP shenanigans
no, having things be continuous gives very nice properties
in particular the solution is always ||somewhere on the boundary of the allowed region||
this is no longer true if you add the constraint of ||integer solutions||
that is the intent, yes
i don't know what you mean by that
like programs can be different answering the same thiing
that's usually true for any problem
<@&831776746206265384>
!cleanban 1435249318931206225 trolling
:incoming_envelope: :ok_hand: applied ban to @grave pasture permanently.
Hello π
do you need help with a specific day?
no in getting the role its elf
Have you completed all days of advent of code for this year?
uh im new to this server i dnt even know whats that
You can read more about what advent of code is in #aoc-faq. The Completionist role is for people who have completed all days of this year's advent of code challenge.
@minor cave add ABC to the list of languages for next year
the language that predated python, written by guido
(it's our one shot at outshining python 0.9.1)
I'm still blown away by the solutions by the AoC "masters", and on top of that people are writing solutions in like 10 different programming languages???? <head explodes>. I have trouble enough with 3.
hey guys this has probably already been asked but when is the last day to get the completionist role
january
And if you get it how long does it last
until january
We have a role highlighting the achievement and celebrating the folks who get all days and stars! It'll be active until January.
So the deadline to get it and the day it disappears are the same
The retiring of the role for the season also means it can't be claimed anymore (I'll turn off the automatic assignment). So yeah, but you can complete AoC to get the role at any point until then.
I'll probably turn if off mid-to-late january
I finally completed 2018/23 π Only one incomplete year left!
Nice!
Β» args-kwargs
Β» async-await
Β» blocking
Β» botvar
Β» class
Β» classmethod
Β» codeblock
Β» comparison
Β» contribute
Β» customchecks
Β» customcooldown
Β» customhelp
Β» dashmpip
Β» decorators
A decorator is a function that modifies another function.
Consider the following example of a timer decorator:
>>> import time
>>> def timer(f):
... def inner(*args, **kwargs):
... start = time.time()
... result = f(*args, **kwargs)
... print('Time elapsed:', time.time() - start)
... return result
... return inner
...
>>> @timer
... def slow(delay=1):
... time.sleep(delay)
... return 'Finished!'
...
>>> print(slow())
Time elapsed: 1.0011568069458008
Finished!
>>> print(slow(3))
Time elapsed: 3.000307321548462
Finished!
More information:
Hello
524 stars unlocked!
weirdly unsatisfying number
It doesn't hurt to try, and you might learn a lot even if you end up struggling.
Would mcfunctions be allowed?
Absolutely
pen and paper too if you like, but that is pretty unrealistic for the size of the real inputs most of the time
but generally programming/scripting language as long as you do it yourself, AI or "vibe coding" solutions aren't allowed (but can't really be enforced, but the creator begs people not to use them for AoC)
Where can I see the problems?
You can solve it however you want (including Google Sheets). You just need to get to the correct solution (typically an integer value).
problems go back to 2015: https://adventofcode.com/2015
all the years are listed under the heading "Events"
solutions for 2025 advent of code -- also in sqlite :)
chapters:
- 0:00 intro
- 3:24 the rules
- 6:15 advanced techniques we'll use
- 28:42 day 1
- 38:10 day 2
- 46:36 day 3
- 1:00:55 day 4
- 1:14:34 day 5
- 1:25:38 day 6
- 1:40:55 day 7
- 1:49:11 day 8
- 2:02:49 day 9
- 2:26:33 day 10
- 3:22:19 day 11
- 3:36:40 day 12
playlist: https://www.yo...
See you next year
You mean this year
OOPs
damn, they've moved on from MrBeast
<@&831776746206265384>
What does this have to do with advent of code?
!compban 1382909805022154814
:incoming_envelope: :ok_hand: applied ban to @weak anvil until <t:1768236473:f> (4 days).
Guess that answers that
Yeah, it's the malware du jour
!compban 665910846077272104
:incoming_envelope: :ok_hand: applied ban to @nova radish until <t:1768599556:f> (4 days).
I've made my own version of challenges inspired by AoC, and I'm looking for people to test them before I release. To check if I get the same answer as other folks, and to make sure the instructions are clear.
Anyone interested in helping me out and hopefully enjoying some puzzles in the process? β€οΈ
(Ps mods said I could ask. They approved the site)
sure!
send me the puzzles and I'll try them if I'm free
oo yeah i'd also like to take a look
I really appreciate the interest π
The more people who give it a look-through, the more confident I can feel releasing it.
where will you be releasing them?
I could help check too
(I will totally not try pushing for harder input to require people to implement something decent)
Online. It's hosted on a website that belongs to a programming community I'm part of.
Can I try too ?
I am not really that good yet
But imma try if I could contribute anything
I would love to try these out when I'm free if you're still looking for feedback!
myDict = {
"balance": 500,
"name": "N/A",
"age": 23
}
myDictAgain = {
"balance": 300,
"name": "johnathan",
"age": 23
}
myDict |= myDictAgain
print(myDict)
Sure but I'm not able to dm you. Can you dm me?
Looks like I canβt dm you either lol, sent you a fr
!COMPBAN 796466843014398014
:incoming_envelope: :ok_hand: applied ban to @queen zinc until <t:1769352027:f> (4 days).
!compban 843398623856558092
:incoming_envelope: :ok_hand: applied ban to @bright frost until <t:1769391656:f> (4 days).
<@&831776746206265384>
!compban 1236967268102176891
:incoming_envelope: :ok_hand: applied ban to @silver hazel until <t:1769428302:f> (4 days).
yo guys why are we banning so much guys?
since advent of code ended, there's not much to talk about, so most messages here are from spam bots
probably time to hide this channel again
this time last month xmas had already passed
gotta call time on xmas eventually
I say I donβt
There was once a time I had to help remove tinsel from a desk
In March
Yes, you gotta
i saw a Christmas tree yesterday so
a tad early for christmas
the wonders of modular arithmetic
When is christmas
when you least expect it
@minor cave Hello I finished the aoc 2025 I'd like to have role highlighting the achievement, I used the command yesterday &aoc link Ever Vino to link my account, but the the role was not assigned yet. Is it something missing?
Yeah I suspect I know the issue. I can get this fixed in the next few hours
Thank you so much
Have you joined one of our leaderboards?
No, I did not joined to the leaderboards. how Can I join?
Slash command! /aoc join
I tried now I got the message "The Python Discord leaderboard for 2026 is not yet available!"
You have your role now~
Thank you, appreciate it
Hello everyone glad to be here
hello everyone
hi
Hi!
Anyone interested in doing previous years of advent of code together? I started doing 2015 today
me
Cool! I solved one problem a day since then, for the most part. I solved up to day 3 and plan to do 4 and 5 today (I didnβt solve one yesterday)
Youβre welcome to catch up. I can also wait for you to catch up if you want me to. I have my solutions on https://github.com/osalbahr but I can just post them here if you prefer that
ok
&aoc link aocleaderboardnamegoeshere
You have linked your Discord ID to aocleaderboardnamegoeshere.
this is not the place to post in if it isn't about "Advent of Code"
and we will not knowingly help you in doing any academic dishonesty
Losing the role again. π’
can someone code for me in the roblox game were making\
Usually asking someone to code FOR YOU instead of with you is not wanted. Also, this seems to be the wrong channel, i would try to go to #ot0-psvmβs-eternal-disapproval (or other ot's) if i were you
.
Advent of code hype!

yeaaaa aoc time!
it will be my first time participating~
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
:x: Failed to get join code! Notified maintainers.
ok
here we gooo
This is gonna be fun
Its my first time being skilled enough to join something like this
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
We're working on the join codes >_> They'll be working shortly-ish
What are join codes?
python discord is going to have our own private leaderboard you can join!
Ooh nice
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
:x: Failed to get join code! Notified maintainers.
oh wait wrong channel oops
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
I'd love to use python for this event but I'm probably gonna use JS as I really need to learn how to use that properly
.aoc join
:x: Failed to get join code! Notified maintainers.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
Wait @minor cave I'm a bit confused. Why are people running bot commands in here and #aoc-bot-commands ? Shouldn't there be just one channel for this?
I have the aoc bot commands channel with the AoC stuff because people will be running the leaderboard commands and I like it to be close so people don't need to hop back and forth from the main aoc channel and the bot commands channel
Ah I see
Only the subscribe and join commands should work, leaderboard will be blocked
In this channel?
mhm
Wooo aoc
so just to confirm @minor cave a new leaderboard will be created for staff eventually?
I was a little confused when it said I already joined the leaderboard 
Staff leaderboard is the same as last year. I dropped the code in staff chats earlier this month. I'll double check you're on it
oh wait, does the .aoc join command check whether you're staff and changes the code on the fly?
Mhm!
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
yeah i can't wait tbh
I agree this sounds really fun, but I don't know if I'll have a lot of time to participate π¦
.aoc join
:x: @patent comet, please (temporarily) enable DMs to receive the join code
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
AoC hasn't started yet, see the latest #announcements
just getting the channel and everything set up before the holidays~
.aoc join
same π
k now what the shit
.aoc join
ive been helper for a while π
lmfao i mean mod
i remember when all the cats' names were still white lol
ggs everyone
π final year exams this december
unfortunately no aoc for me this year
cant wait to see arknave's code art though if he is participating this year that is
.aoc join
.aoc join
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc join
shame that i got exams in december
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
thank you
.aoc join
.aoc join
yesss, that was super cool last year
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Hello
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc leaderboard
:x: Please use #aoc-bot-commands for aoc commands instead.
.aoc join
You guys build any cool frameworks/libs for AOC?
I'll share mine if anyone's interested: https://github.com/Meltz014/AdventOfCode
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Hey, you already are receiving notifications about new Advent of Code tasks. If you don't want them any more, run .adventofcode unsubscribe instead.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc join
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
Hey, you already are receiving notifications about new Advent of Code tasks. If you don't want them any more, run .adventofcode unsubscribe instead.
.aoc join
.aoc join
.aoc join
.aoc join
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc join
.aoc join
:x: @pearl needle, please (temporarily) enable DMs to receive the join code
.aoc join
Anyone else warming up with some prior years?
.aoc join
.aoc join
I did some of that a couple of months back π Got through parts of '19 and '18
.aoc join
:x: @pliant comet, please (temporarily) enable DMs to receive the join code
.aoc join
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
.aoc join
:x: @wind plover, please (temporarily) enable DMs to receive the join code
.aoc join
.aoc join
Time to write more shitty code this year
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Hey, you already are receiving notifications about new Advent of Code tasks. If you don't want them any more, run .adventofcode unsubscribe instead.
.adventofcode subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
.aoc join
Hey @minor cave, what do you think about having the bot update the channel description every day to add "Next challenge in $timestamp!"?
also what about automating #advent-of-code-spoilers-archive π
sounds error-prone
I can see admins having to unlock it be error prone too
it is much harder to periodically pull the leaderboard and update the channel permissions than just update the timestamp every time we send a ping
I think Kat will handle the locking and unlocking
so her role is granted permissions for that channel? 0.o
I remember her complaining about not having those perms anymore
I can't move channels and some role permissions I don't have access to. But I'm going to manually lock/unlock the channel because we can't really automatically check when the global leaderboard fills up without stressing the apc api.
so what do you think about the suggestion?
Sure? I don't think it matters too much because we have the countdown command. Someone would have to PR it and review it
.aoc join
does the countdown command uses fancy timestamps?
The Advent of Code event is not currently running. The next event will start in 5 days.
no
.aoc join
.aoc join
:x: @north swallow, please (temporarily) enable DMs to receive the join code
.aoc join
:x: @north swallow, please (temporarily) enable DMs to receive the join code
!code
Here's how to format Python code on Discord:
```py
print('Hello world!')
```
These are backticks, not quotes. Check this out if you can't find the backtick key.
.aoc join
.aoc join
Whoβs excited?? Starting in just a few days! πββοΈ
me
.aoc join
:x: @hollow wharf, please (temporarily) enable DMs to receive the join code
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
.aoc help
**```
.adventofcode
**Can also use:** `aoc`
*All of the Advent of Code commands.*
**Subcommands:**
**`about `**
*Learn about Advent of Code*
**`countdown `**
*Return time left until next day*
**`join `**
*Learn how to join the leaderboard (via DM)*
**`subscribe `**
*Notifications for new days*
.aoc join
.aoc join
#aoc-bot-commands
.aoc join
what does aoc command
.aoc join
direct message from the bot with instructions on how to join the Python discord serverβs private leaderboard for this yearβs adventofcode
More infos in the faq #911684406605930496
ok?
The Advent of Code event is not currently running. The next event will start in 3 days.
You can try all the commands out in the channel #aoc-bot-commands π
.aoc join
.aoc join
.aoc join
The Advent of Code event is not currently running. The next event will start in 2 days.
.aoc join
**```
.adventofcode
**Can also use:** `aoc`
*All of the Advent of Code commands.*
**Subcommands:**
**`about `**
*Learn about Advent of Code*
**`countdown `**
*Return time left until next day*
**`join `**
*Learn how to join the leaderboard (via DM)*
**`subscribe `**
*Notifications for new days*
**```
.adventofcode
**Can also use:** `aoc`
*All of the Advent of Code commands.*
**Subcommands:**
**`about `**
*Learn about Advent of Code*
**`countdown `**
*Return time left until next day*
**`join `**
*Learn how to join the leaderboard (via DM)*
**`subscribe `**
*Notifications for new days*
.aoc about
Advent of Code (AoC) is a series of small programming puzzles for a variety of skill levels, run every year during the month of December.
They are self-contained and are just as appropriate for an expert who wants to stay sharp as they are for a beginner who is just learning to code. Each puzzle calls upon different skills and has two parts that build on a theme.
Sign up with one of these services:
GitHub
Google
Twitter
Reddit
For the global leaderboard, the first person to get a star first gets 100 points, the second person gets 99 points, and so on down to 1 point at 100th place.
For private leaderboards, the first person to get a star gets N points, where N is the number of people on the leaderboard. The second person to get the star gets N-1 points and so on and so forth.
Come join the Python Discord private leaderboard and compete against other people in the community! Get the join code using .aoc join and visit the private leaderboard page to join our leaderboard.
The Advent of Code event is not currently running. The next event will start in 2 days.
!code
#bot-commands
.aoc join
.aoc join
Is it possible to play without joining?
.aoc join
Hmm, <@&831776746206265384> I don't think this is appropriate
Don't think so
What's so wrong LMAO
.aoc
**```
.adventofcode
**Can also use:** `aoc`
*All of the Advent of Code commands.*
**Subcommands:**
**`about `**
*Learn about Advent of Code*
**`countdown `**
*Return time left until next day*
**`join `**
*Learn how to join the leaderboard (via DM)*
**`subscribe `**
*Notifications for new days*
you have to make an account of advent of code to get access to the puzzles, but there's no requirement to join a leaderboard or anything
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
I never completed aoc.. Hope to finish all the puzzles this time
any python packages to pull the data of each part of each challenge real fast?
Huh?
I'm thinking more of into the puzzles, even if delayed to access them.
To access the puzzles will require going to the advent of code website and viewing it there
π
.aoc subscribe
Okay! You have been subscribed to notifications about new Advent of Code tasks. You can run .adventofcode unsubscribe to disable them again for you.
maybe i will finish the 2020 problems that i didn't get to last year
gotta prepare π
.aoc join
I wonder if this is the year I'll actually finish the AoC
doubts... but \π© perhaps I'll try
As long as youβre having fun
I remember being incredibly frustrated, maybe I'll know enough this time, though
Yeah, some of the later ones are difficult
meanwhile, I was stuck on day like... 9 or 12 or something
I think those count as βlater daysβ lol
the sea monster problem last year π³
nvm, it was day 10
I think I stopped some day close to that as well last year
yeah, first few days were fun for me
I remember doing the first couple in Nim
... somehow
Whatβs Nim?
I dunno how to explain it, it's fairly Pythonic and has some interesting things that I quite liked
I read the docs now. Looks kinda cool
I like parts of their branding
It's quite nice, and I wish editor support was better... Maybe this AoC I'll try and get a decent environment working for it
I might do that now, actually
Nice
You know, I've looked up Nim before, but I never bothered to actually get into it
@worthy horizon @rapid wolf we should totally do AoC in Gurklang lol
π
It's not super easy to get into, namely because most editors don't have terribly great support for it
Hey, itβs a great idea
Conveniently I am insane enough to already be using (Doom) Emacs which already has support, so I should be good there
I will try a few
but I am not sure what state the IO API is in
I was going to do smalltalk
Yeah, I was thinking about setting up emacs or neovim just for Nim
I think weβd need a few more string operations
but... both are too much for my tiny brain
Well if you ever want to go down the pit of Emacs, Doom Emacs is great: https://github.com/hlissner/doom-emacs
meh, I think we can make a list from a string
so we can just handroll it linked lists of chars haskell style
I guess that might work too
Built-in EVIL support so you can use familiar Vim keybindings and commands, a lot of abstracted-away setup means you shouldn't need to do much to have a functional environment (at least on the Emacs side),
I donβt think we have any real IO yet, though
It's neat
Didn't we make a stream API at some point
I might implement a few string operations for AoC. At least personally, theyβd be quite useful, and AoC often requires a bit of string manipulation
bruh last year was literally advent of regex π
which year was advent of cellular automata again?
last year
lol
@rapid wolf just setup gurklang again. This is kind of nostalgic
woo actual discussion now rather than just commands
somehow people forget #aoc-bot-commands is a thing
I'm so tempted to make a solution in Python, and then golf the code in Rust to make it look like the topic of the challenge
I was actually surprised to less bot commands in #aoc-bot-commands than in here
Hi :D
I'm gonna try and make some ASCII art in my code this year
C is best for ASCII art tho
:incoming_envelope: :ok_hand: applied mute to @vivid adder until <t:1638155552:f> (9 minutes and 58 seconds) (reason: duplicates rule: sent 4 duplicated messages in 10s).
.aoc join
.aoc join
.help aoc
.aoc join
:x: @narrow crown, please (temporarily) enable DMs to receive the join code
Starting 12/1!
Happens to everyone tbh
does anyone do turtle/
*1/12
*12/1 π
1st december π
29*
.aoc join
Ah, same message as last year. π
Tied for first place, my best result yet.
9pm PT
Pacific Time
π
I use PT, as PST is only part of the year, and PDT is only part of the year, PT is year round.
Pacific Time, regardless of whether daylight savings is in place.
no, it's PST during pst, and it's pdt during pdt.
like it's 10:15pm PST right now, and 11:15: PDT.
I just use PT so I don't have to keep track of which we're in. PT is always correct.
Let's see if there's an AOC question about time zones. π
Very little snow in the Seattle area, reminds me of UK. But less overcast.
Yeah, t-shirt weather here today.
Need some advice, I'm going to post on reddit about AOC and wondering what to tell the people in the subreddit I mod about it. Any advice/pointers would be a good.
lol
gonna have time disadvantage π
Gonna have time advantage! Starts at 12 noon for me lol
starts at 10:30am for me, but school π
6 am for me
midnight π
i stayed up every night last year :/
was fun, but not sure if i want to do that again
yep
long time no see old friend
i stayed up for the first couple days and then quit ππ
Me too and I'll do it again π€£

the timezones are not very nice for me. It's midnight EST which is like 6 or 7AM for me
aka i'll be very much asleep at that time
Timezones suck for me as well so I just ignore leaderboards
RIP europeans who have school/jobs, pretty much
at some point it probably doesn't matter that much because most people don't finish all of the problems
Itβs 6 am for me
I could wake up at 6 and have about an hour until I need to get ready for class. Maybe AoC can fix my sleep schedule lolol
I normally get up at 6, but I don't have time at all to do any coding xD
I guess I could do aoc during school ;)
I liked the scoring algorithm π
You can take a look at the faq channel here, those were our most asked questions and for our community it does a decent job of answering it
5am where I am, so a bit of an adjustment for me π
if your sleep schedule is still like what it was last year, don't you normally stay awake until like 7:00am anyways π³
That was the case until yesterday π I decided it's probably healthier to get up early for it than stay up late.
wowww
10 alarms
midnight EST
6am for most of Europe
I cannot wake up even with several alarms...
i wake up at 6 anyways lol, midnight sucks because if you don't stay up you're probably not going to be awake at least like 6-7 hours after the challenge releases, but if it releases at 6 you'll probably be awake 0 to 4 hours after
.aoc about
Advent of Code (AoC) is a series of small programming puzzles for a variety of skill levels, run every year during the month of December.
They are self-contained and are just as appropriate for an expert who wants to stay sharp as they are for a beginner who is just learning to code. Each puzzle calls upon different skills and has two parts that build on a theme.
Sign up with one of these services:
GitHub
Google
Twitter
Reddit
For the global leaderboard, the first person to get a star first gets 100 points, the second person gets 99 points, and so on down to 1 point at 100th place.
For private leaderboards, the first person to get a star gets N points, where N is the number of people on the leaderboard. The second person to get the star gets N-1 points and so on and so forth.
Come join the Python Discord private leaderboard and compete against other people in the community! Get the join code using .aoc join and visit the private leaderboard page to join our leaderboard.
.aoc join
.aoc join
.aoc join
.aoc join
.aoc join
#aoc-bot-commands 

somebody else doing old AOC for fun? π
.aoc join
:x: @static bloom, please (temporarily) enable DMs to receive the join code
.aoc join
.aoc join
me!
I did a bruteforce (recursive simulation) for d7 2015 and my cmd froze XD
and then tried playing manually between trash pulls during raid. and I noticed the names are actually assigned in order (but for a), so I can just sort and assign values instead of assigning functions and then doing recursion XDDD
.aoc join
ooh that problem was so fun !
is it coming out in 28min
.aoc join
when is it
thats bad
il need to wake up 5am
on a non weekend day
fuck
some bastards wake up perfect time on weekends
ready to go
tired grogy me in the morning solves a coding puzzle
To clarify, it's midnight EST on December 1st
Your local time for the first release can be found here: https://discord.gg/python?event=913513068703658055
smh use the special feature rather than that feature
hm? what are you talking about?
<t:1638230616>
Events are special too π€·ββοΈ
Plus, you can subscribe for an alert when it happens
its crashing my mobile app rn
Update the app then
Well that's gonna cause issues for sure, that's the point of canary π
if you're expecting something stable then use the stable version. But the event is a bit easier because it's a quick link instead of trying to figure out the epoch for it.
(I'd recommend reporting the crash to Discord if you can reproduce it)
ftr, works fine for me on Android Alpha
(if dtesters was open i would)
You can report it online at https://dis.gd/support, just select bug reporting
.aoc join
gonna start tomorrow
Good luck everyone
.aoc join
i am going to skip classes (as usual) to get it
nice
oh it's later now
.aoc join
.aoc join
.aoc join
If humans were unable to bend their arms, street fights would turn into jousting matches.
man aoc starts when i have school 
Oooh, it's this time of the year again
time for my 30 wpm to shine 
it's not really about typing fast, it's about understanding the problem fast IMO - the problems aren't easy to understand quickly so the typing speed doesn't matter that much
.aoc count
The Advent of Code event is not currently running. The next event will start <t:1638334800:R>.
It's localised now π
here we go again
Wake up at 5am?
not sure if i'll be able to stay up past midnight every night again this year

