Corrections: - [Visual error at 6:02] "Ultrecht" should be Utrecht - [Visual error at 10:32] Shortest path from A to C should be ADC, yielding a distance of 1+7=8, making the total distance from A to C to E: 8+12=20
Honestly to most people (me) half of the video sounds like radio noise only changing when you randomly mention some stupid joke that makes me spit my drink so I don't think you have to be that worried.
Also: A Priority Queue is not a list that sorts itself, it is a queue that always returns the element with the highest priority next (usually the lowest value in a list of numbers). As a matter of fact, PQs usually get implemented using a Min-Heap (which, by keeping the heap invariant true, has always the lowest element as its root). Important to understand is that a PQ is not a list but a queue (a First-In-First-Out data structure which makes it impossible to do index calls) and is not (fully) sorted but only gives back the element with the highest priority / lowest value. Of course you can easily implement it by sorting a list once an element has been added but that is usually not how it is done because the computational overhead it generates for the little (to no - in a PQ we don't care about any other element than the next) benefit it gives us. Operating on a large dataset this can significantly affect the performance. You based your explanation on your implementation and while the implementation of course works the explanation of a PQ is wrong. Just something I wanted to mention but other than that, nice video as always!
@@arolimarcellinus8541 I just say what i see and am not knowledgeable about playing bad apple on anything...i think he just makes each frame with rows of text that instead of pixels use characters to make the frame. You can probably see the code when he ctrl+v it in there.
@@PurpleSpiritFoxFire About what he show at the end, it's most probably just javascript on his client side, as the timestamps stay constant (and the update is too fast compared to the start update time). But that would probably just be for the gag at the end of the video and not the actual attempt that made him banned, as it don't send anything to the server
i immediately love your videos more for taking a brief moment to list the cons of the VPN you used to counter the unintentional endorsement of non-sponsored product use.
As a non Dutch I will disagree, others failings to pronounce something might be because the people you are using for examples are English. The english language kinda sucks for pronounciation.
As someone who finished up algorithms as one of my final courses out of college, this would have been a great video to show to our class on Dijkstra's.
7:45 When he started listing the algorithms, I was surprised by the amount of algorithms I never knew. Then I heard “Fecto Elfilis algorithm” and realized “wait.. that doesn’t sound right”
My dad went to a very small university in Canada and was on the programming team They actually ended up going to the world championship in Hawaii and beat schools like MIT and Harvard I never knew much about how it actually worked so this was a very nice way for me to be able to appreciate his achievements a bit more He is still probably the smartest person I know Thank you for the great video
I was on my university’s first real programming team. There were so few people interested that we didn’t even have to try out. We just volunteered and we were instantly on the team. We didn’t have enough time to learn all the relevant algorithms so my position on the team was to solve problems that nobody knew the algorithm for lol. I remember one of my ad hoc solutions being too slow for the judge so we wrote code that printed out a C array of the first 100 primes. Then we took that array and hardcoded it into the solution to reduce the final processing time.
Dickstroke's Algorithm was the thing that broke my brain when I tried to program it for my class and I didn't understand it before I came across this video. Now, after watching this video, I still don't understand it. Thanks, Junferno!
Currently preparing for British Informatics Olympiad this year, I open TH-cam and see new Junfero competitive programming video with anime woman in thumbnail, nice algorithms very cool
As a competitive programming nerd who took part in the Sud West European Regional Contest for ICPC of last year (my team lost, since we're not Russian), I can attest that this video is truthful, and also that competitive programming is a great source of -frustration- satisfaction.
I clicked on your video because the thumbnail has to be the most eye catching thing ever. What does misato have to do with competitive programming? I‘ve seen it now and I am unable to turn down my urge to get an answer for the question. Props to that. Genius.
Very nice surprise to see my country in your vid. Your pronounciation is on point! Having been to all these places myself I guess I have to agree with you :D The dijkstra guy kinda reminds me of walter white for some reason
Wow! I'm now motivated to become a competitive programmer with absolutely no skills in programming. Thank you for letting me see the other side of the window
the final problem reminds me of that way of decrypting a decryption key with only one one pair of encrypted/decrypted messages. instead of randomly guessing 100 different consecutive decryptions (a already encrypted encryption is recrypted several times to increase security) in order to find the proper decryption key, one can instead guess 50 decryptions on the encrypted message and do 50 reverse encryptions on the decrypted message and meet in the middle and compare all of the different half decrypted keys and see which ones match. Because the time needed to break an encryption increases exponentially with every layer of encryption, decreasing the time needed from t^100 to 2*t^50 where t is the time to guess a single layer of decryption is an extremely effective method. Thus, it is also extremely hard to have 2 middle points instead of 1 because there is no secure launching point to 'save progress'.
As someone that lives uncomfortably close to birmingham, I can confirm that there is no reason to go to birmingham. Also props for pronouncing it correctly
"An idiot admires complexity, a genius admires simplicity, a physicist tries to make it simple, for an idiot anything the more complicated it is the more he will admire it"
I didn’t really understand this video when it first came out but now but now it finally makes some sort of sense. I was learning about weighted graphs in data structures and algorithms today and instantly remembered this video
If you were wondering what song plays at the beginning of the video with the radical violin it's Blood Drain - again - by Raito, it's on Spotify and I was stoked to hear it in this video
spotify started playing susser tod near the end of the video and i only realized it wasn't part of the video when the video stopped but susser tod did not.
It's not a triangle, it's a graph. And the numbers aren't side lengths, they're the cost associated with traveling that edge. Imagine that they're towns connected by toll roads. It's cheaper to travel from town 1 to town 3 be via town 2 because you only pay $4 in tolls instead of the $5 toll you'd have to pay to go directly from town 1 to town 3
@@cemmy410 oh, now I get it. It works because they are the times it takes to travel the road, not the length of the road. Some roads take longer to travel due to something like traffic, while other roads don’t take as long.
@@Jerryfan271 but if we were talking of road lengths, there are no non-Euclidean roads on earth. I did think of that, but it doesn’t make sense for this example
brooo im 43 seconds in & im already dying of laughter lmaoo and having a good time , i had a terrible day today & obviously very stressed but your video changed that , subscribed !!(no brainer)
First time to your channel and I accidentally got an explanation of the Dijkstra's algorithm. Came for the thumbnail, stayed for the informative tutorial (can I call it a tutorial though?). Anw, thank you and can't wait to see more videos like this.
Corrections:
- [Visual error at 6:02] "Ultrecht" should be Utrecht
- [Visual error at 10:32] Shortest path from A to C should be ADC, yielding a distance of 1+7=8, making the total distance from A to C to E: 8+12=20
Honestly to most people (me) half of the video sounds like radio noise only changing when you randomly mention some stupid joke that makes me spit my drink so I don't think you have to be that worried.
Also: A Priority Queue is not a list that sorts itself, it is a queue that always returns the element with the highest priority next (usually the lowest value in a list of numbers). As a matter of fact, PQs usually get implemented using a Min-Heap (which, by keeping the heap invariant true, has always the lowest element as its root). Important to understand is that a PQ is not a list but a queue (a First-In-First-Out data structure which makes it impossible to do index calls) and is not (fully) sorted but only gives back the element with the highest priority / lowest value. Of course you can easily implement it by sorting a list once an element has been added but that is usually not how it is done because the computational overhead it generates for the little (to no - in a PQ we don't care about any other element than the next) benefit it gives us. Operating on a large dataset this can significantly affect the performance.
You based your explanation on your implementation and while the implementation of course works the explanation of a PQ is wrong. Just something I wanted to mention but other than that, nice video as always!
@@peatral Thanks! Clarification footnoted.
@@Junferno Nice, that is a really good footnote!
Me when dutch
Can't believe I got baited into watching an informative video just because it had a picture of Misato on it
Lmao same
omg did we really AHAHA 😭😭
literally
we are all goofy ahh people
you jus like me fr
He completely lost me when he started explaining that 2D array thing, but then he put Rei Evangelion in the video and completely won me over
2D arrays are great! 3D arrays are even more awesome. It's not as complicated as it seems.
same
I like it when she appears and says her catchphrase "it's rein' time!" And fires a deadly rays of gamma radiation
@@kakyoindonut3213 hilarious and original
@@zyrgr2940 ironic
This video should be renamed from "Intro to Competitive Programming" to "Overexplaining Dijkstra's Algorithm"
The title and the content of the video together perfectly captures what it's like to be a first-year CS student.
you mean uniform cost search
"Overexplaining Dutch Geography"
He must be a fan of Neil Degrasse Tyson!
"Overexplaining ____________ Algorithm" = second/first year cs classes lmao
"this is a list of Kirby antagonists"
...
"Stable marriage"
Stable marriage, the biggest Kirby antagonist.
russian peasant
Link cut tree.
Or just Z
@@kabliss4111 that sounds like a Zelda speedruning technique
They asked me how well I understood theoretical computer science. I said I had a theoretical degree in computer science. They said welcome aboard.
lmao
New vegas, love it!
A "theoretical degree" lol ha.
u have a degree in theory huh, well that's professional enough! like, haggle your way out the coding interview, maybe!
Newsflash: Fantastic is irreplaceable.
I love this kind of low-budget, high-humor videos
also
He explained it very intuitively
there is something charming about videos made on a not so big budget. but with a lot of effort
I also love no money high funny videos
I like to imagine Jun got IP banned from CodeForces for playing Bad Apple on their verdict page
he probably did 💀
It was worth it tho😂😂
wait....how can he playing bad apple in the verdict page?? is there any some system that we can use??
@@arolimarcellinus8541 I just say what i see and am not knowledgeable about playing bad apple on anything...i think he just makes each frame with rows of text that instead of pixels use characters to make the frame. You can probably see the code when he ctrl+v it in there.
@@PurpleSpiritFoxFire About what he show at the end, it's most probably just javascript on his client side, as the timestamps stay constant (and the update is too fast compared to the start update time). But that would probably just be for the gag at the end of the video and not the actual attempt that made him banned, as it don't send anything to the server
an evangelion themed competitive programming video
made for me honestly
It even has Touhou music to match your profile pic!
@@nixel1324 who's on the profile pic?
@@burnedpizzacrust1199 Marisa Kirisame, probably the closest Touhou has to a central protagonist after Reimu.
i immediately love your videos more for taking a brief moment to list the cons of the VPN you used to counter the unintentional endorsement of non-sponsored product use.
me too, I actually paused to read them all
as a Dutch I'm impressed with the pronunciation of these dutch cities, given Dutch is next to impossible to pronounce.
Every time I hear it, it makes my mouth feel weird because i'm imagining a muscle spasm in the roof of my mouth
just do the hard G and you’ve got the entire language down
As a non Dutch I will disagree, others failings to pronounce something might be because the people you are using for examples are English.
The english language kinda sucks for pronounciation.
@@unclassifiedsignal it is, we just learn to connect different sounds to the same letters.
And when ya used to it it takes ages to learn any other language ever
I should have expected the end but it somehow took me by surprise
Competitive programmers realizing their entire livelihood consists of only inverting binary trees 💀
Never in my competitive life have I inverted binary trees
@@arsenypogosov7206 You are in denial.
funny fast kirby man !
Looks like you have never did competitive programming.
L
0:29 I love how you translated this sentence to specifically Chinese Russian and Polish, this describes the top competition pretty well
I can't believe you tricked me into reliving my algorithms and data structures class
All it took was anime
6:51 the amount of whiplash between these two sentences is too much lmao. I love it
I was so lost at that point that I didn't even notice it lmao
Instead of the Gorilla Basket problem. This is the Programming Rei McDonalds problem.
As someone who finished up algorithms as one of my final courses out of college, this would have been a great video to show to our class on Dijkstra's.
You do them in final course? Our mf prof. just taught us C and went straight to Narasimha Karaumachi's DSA book.
everyone would pay attention when the rei part would come on
Somehow the consistent Bad Apple endings manage to keep surprising me. I may have developed early-onset dementia since becoming a viewer.
7:45 When he started listing the algorithms, I was surprised by the amount of algorithms I never knew. Then I heard “Fecto Elfilis algorithm” and realized “wait.. that doesn’t sound right”
Amazing pronunciation on everything, even "VM7WC".
The entire explanation of the Dijkstra's algorithm was done in a way that maximized Jun's ability to flex his Dutch pronunciation.
I always wanted to learn about competitive programming!
now i want to forget
My dad went to a very small university in Canada and was on the programming team
They actually ended up going to the world championship in Hawaii and beat schools like MIT and Harvard
I never knew much about how it actually worked so this was a very nice way for me to be able to appreciate his achievements a bit more
He is still probably the smartest person I know
Thank you for the great video
He must be crazy smart cuz this is actually extremely intellectually difficult feet to accomplish
You should probably pick up programming you might have a gift for it too.
Is it Waterloo?
@@khoiduongminh5111Waterloo isn’t small
"This is a list of Kirby antagonists, actually."
Three seconds earlier: "Stable Marriage"
I was on my university’s first real programming team. There were so few people interested that we didn’t even have to try out. We just volunteered and we were instantly on the team. We didn’t have enough time to learn all the relevant algorithms so my position on the team was to solve problems that nobody knew the algorithm for lol. I remember one of my ad hoc solutions being too slow for the judge so we wrote code that printed out a C array of the first 100 primes. Then we took that array and hardcoded it into the solution to reduce the final processing time.
"The other city in the netherlands" 😂😂 funniest way to avoid saying groningen
Glad you managed to put Bad Apple in again.
I felt it's abstinence in the last video.
10/10
Dickstroke's Algorithm was the thing that broke my brain when I tried to program it for my class and I didn't understand it before I came across this video. Now, after watching this video, I still don't understand it. Thanks, Junferno!
Dickstroke's algorithm
you were in the wrong class
Bro just randomly threw Touhou soundtrack in. LOVE IT
Currently preparing for British Informatics Olympiad this year, I open TH-cam and see new Junfero competitive programming video with anime woman in thumbnail, nice algorithms very cool
As a competitive programming nerd who took part in the Sud West European Regional Contest for ICPC of last year (my team lost, since we're not Russian), I can attest that this video is truthful, and also that competitive programming is a great source of -frustration- satisfaction.
Not sure what Misato has to do with this but I’m glad she’s here regardless
Before the video, I didn't know anything about competitive programming. Now that I've watched this, it's just as before. Thanks for explaining.
Yep 100% agree.
How is He putting so much information into my brain so fast. This video is 12 minutes long, and I feel like I've watched 1 hour long video essay.
I clicked on your video because the thumbnail has to be the most eye catching thing ever. What does misato have to do with competitive programming? I‘ve seen it now and I am unable to turn down my urge to get an answer for the question. Props to that. Genius.
I SHOULD HAVE EXPECTED "IT" AT THE END
that dijkstra example is exactly how my professor explained it (at utrecht university no less)
Very nice surprise to see my country in your vid. Your pronounciation is on point! Having been to all these places myself I guess I have to agree with you :D The dijkstra guy kinda reminds me of walter white for some reason
Wow! I'm now motivated to become a competitive programmer with absolutely no skills in programming. Thank you for letting me see the other side of the window
10:32 Is it just me or is the shortest path from A to C in this example clearly ADC, or 8 instead of 9?
Just you. Alien.
@@BGP00 it's impossible in real world but he's clearly right if you use the graph
@@BGP00 you can’t go from A to C directly here
@@omniladdrr6899 its not impossible, the line doesnt represent a straight path
@@ArbitraryCodeExecution fair enough
Wow this sure would've been helpful in my first ever competitive programming contest last week wow truly a crazy world am I right
the final problem reminds me of that way of decrypting a decryption key with only one one pair of encrypted/decrypted messages. instead of randomly guessing 100 different consecutive decryptions (a already encrypted encryption is recrypted several times to increase security) in order to find the proper decryption key, one can instead guess 50 decryptions on the encrypted message and do 50 reverse encryptions on the decrypted message and meet in the middle and compare all of the different half decrypted keys and see which ones match. Because the time needed to break an encryption increases exponentially with every layer of encryption, decreasing the time needed from t^100 to 2*t^50 where t is the time to guess a single layer of decryption is an extremely effective method. Thus, it is also extremely hard to have 2 middle points instead of 1 because there is no secure launching point to 'save progress'.
I signed up for an upcoming programming competition and boy am I fucked,....
now im a god thank you junferno
i understood less than usual and laughed more than usual, banger video thank you Junferno 🙏
I love how your videos have the power of curing my depression even though I've literally never coded anything in my entire life
"Intro to Competitive Programming"
*Casually starts explaining Dijkstra's Algorithm
10:26, it feels like the moment where the manga protagonist is revealing how he won at the end of the battle.
As someone that lives uncomfortably close to birmingham, I can confirm that there is no reason to go to birmingham. Also props for pronouncing it correctly
"An idiot admires complexity, a genius admires simplicity, a physicist tries to make it simple, for an idiot anything the more complicated it is the more he will admire it"
Crazy how you made a video on competitive programming as soon as I started getting into it
Did you watch it? This was more a video on Dijkstra.
he lives in your walls
@@31redorange08 I just saw the video name and the first few seconds, I was still in school when the video was uploaded
I am a simple man. I see Misato. I click on it.
I literally spaced out listening to flowering night. You really need to add more obscure touhou references.
I am fuckin SCREAMING at the ending, Juneferno strikes again
MY GOD THIS MELTY SOUNDTRACK SOLD YOUR VIDEO TO ME
I love how almost all competitive programming discussions just devolve to graph theory and Birmingham.
It was interesting to learn what Rei Evangelion would look like while working at McDonald’s. Very helpful and educational video, thanks!
you spent so long debating how to get to Groningen you never considered if you should
I didn’t really understand this video when it first came out but now but now it finally makes some sort of sense. I was learning about weighted graphs in data structures and algorithms today and instantly remembered this video
1:27 yeah playing bad apple definitely was an accident
The bad apple surprise ending caught me off guard
this unironically inspires me to take up competitive programming just so i can flex how many niche and useless algorithms I can memorize
you are not the same person after learning DSU
@@the_cheese_cultistlol, sure you are
Thats a whole new level of educational shitposting
firstly I would like to wish you well and to say a huge thank you for uploading these videos as they have been an invaluable resource to
Less go, new junferno vid
U tricked me into graph theory
love this channel
My climb to grand master coder begins here
That's something a shounen protagonist would say lmao
New favorite channel. Delivery is art
HAHAHAHAHA I laughed a lot when you started showing the algorithm names, good video!
Bro just called Ayanami "Rei Evangelion" lmao 💀
prove him wrong
that shortest path with longest middle edge is a very informative problem nicely explained
If you were wondering what song plays at the beginning of the video with the radical violin it's Blood Drain - again - by Raito, it's on Spotify and I was stoked to hear it in this video
1:55 How would a Minecraft code look-?
Your videos are quite often the highlight of my day
Remember, there'll always be someone who's made their own language exclusively for competitive programming...
nah, making a library is reasonable tho and is also already done
@@amirnuriev9092 kk time to download my gold medal from a library :D
I'm so angry rn because of the ending. I expected it from the very beginning but this only made me more furious
stay malding
You did prett well pronouncing those dutch cities. Definetly better that most non-dutch speakers.
My favorite Kirby antagonist, Suffix Automata 2.
Cool video! Honestly learning all the graph + sorting algorithms seems fun
I can say I was not expecting to hear blood drain again in the first 10 seconds of the video
spotify started playing susser tod near the end of the video and i only realized it wasn't part of the video when the video stopped but susser tod did not.
Loved your dedication! Nice video!
I LOVE your videos
The oneshot music was a pleasant suprise. Watching this on the world machine edition launch day.
BROTHER, YOU ARE THE BEST!!! You oooh really helped me!! THANK YOU VERY MUCH!
It took me until 5:06 to realize that the initial example is impossible because it is a triangle with side lengths of 2, 2. And 5, which can’t exist.
It's not a triangle, it's a graph. And the numbers aren't side lengths, they're the cost associated with traveling that edge.
Imagine that they're towns connected by toll roads. It's cheaper to travel from town 1 to town 3 be via town 2 because you only pay $4 in tolls instead of the $5 toll you'd have to pay to go directly from town 1 to town 3
@@cemmy410 oh, now I get it. It works because they are the times it takes to travel the road, not the length of the road. Some roads take longer to travel due to something like traffic, while other roads don’t take as long.
@@GamerX-2000 another way of describing this is that the graph is non-Euclidean.
@@Jerryfan271 but if we were talking of road lengths, there are no non-Euclidean roads on earth. I did think of that, but it doesn’t make sense for this example
@@GamerX-2000 roads aren't straight lines so measuring distance by shortest road would be a non euclidean metric
I've been waiting for this kind of video for a really long time.
"They asked me if I had a degree in theoretical computer science. I told them I had a theoretical degree in computer science."
brooo im 43 seconds in & im already dying of laughter lmaoo and having a good time , i had a terrible day today & obviously very stressed but your video changed that , subscribed !!(no brainer)
bro i wanted to watch a video to relax and then i got tricked to studying content in my data structures class
Great style. Excited to see your next video.
Loving these videos. Hope you keep making more
your dedication to the bad apple meme is commendable
also an interesting form of competitive programming: code golf, where it doesn't matter how fast you are, just how many bytes of code you have
I saw Evangelion in the thumbnail, and in the profile pic, so I clicked without even reading the Title
Damn, I loved the way this vid was put was together subbed XD
you really put Misato Katsuragi on the thumbnail and I clicked for that but stayed for the content.
Something makes me feel like server abuse was committed in the making of this video…
First time to your channel and I accidentally got an explanation of the Dijkstra's algorithm. Came for the thumbnail, stayed for the informative tutorial (can I call it a tutorial though?). Anw, thank you and can't wait to see more videos like this.