3Blue1Brown styled animated competitive programming videos - A way to make hard problems easier for beginners?

(a direct link to my video if you don’t want to read a block of text - https://www.youtube.com/watch?v=zAtk7OTtoQ4)

For those of you who don’t know who 3blue1brown is, he’s a maths youtuber who is known for making advanced topics in maths more approachable for everyone. How does he do this? By visually representing whatever he’s trying to explain. Take a look at his channel, you’ll understand what I mean -

When Codechef announced their creator contest a couple of weeks ago, it got me thinking - There are a lot of similarities between maths and competitive programming. But when it comes to understanding something in cp, the one thing that I really need is visualisations. Most cp youtubers, use online sketchpads or powerpoint presentations, but I couldn’t find a single one who used 3blue1brown styled animations or anything similar.

I just feel that something similar to 3blue1brown but for cp would have made it a lot easier when I was learning concepts that were hard to understand(for example, back when I was learning about slope trick, it took me 20 pages of graphs to actually understand how and why it works(https://codeforces.com/blog/entry/77298)).

Luckily, 3blue1brown’s animation library’s open source, so I decided to try using it for the creator contest, to create an animated video editorial. This is how it turned out - https://www.youtube.com/watch?v=zAtk7OTtoQ4

What are your thoughts on this? Could animated competitive programming videos be significantly more helpful than ones on sketchapds? Or would you say that it’s the same?(or perhaps worse :stuck_out_tongue: ?)

This was just a video editorial for the problem, so I didn’t explain some of what I used in detail(segment trees, binary lifting etc.). If you don’t want to watch the whole thing you might want to skip to 4:36 - it might give you an idea about how visualisations can be important(in this case, converting something on the cartesian plane to a directed tree)).

If you aren’t aware of how euler tours work 7:44 might help, but I think that that isn’t too hard to replicate on a sketchpad or a powerpoint presentation.

I honestly do think that Manim(the name of 3b1b’s animation library) could help beginners understand advanced topics or solutions to harder problems - I’d especially like to hear from people that are new to competitive programming, or people who generally find it hard to learn new concepts from resources that are already available(doesn’t necessarily have to be a video, afaik there aren’t any slope trick videos(yet :wink:)). Do you think that 3blue1brown styled videos would help you?

Also, please like the video/leave a comment/share it with others :slight_smile: It’s a part of community based contest(the video with the most views+likes wins or something I think, I’m not too sure) (It doesn’t seem like I’m going to win, I’m quite far behind, but still)

Also, here’s another very good video by Aryan Agarwala(not animated, but it’ very good)-https://www.youtube.com/watch?v=rujx-FtAqaQ

He does a very good job of explaining a non trivial problem in a simple way.


I was only 3 minutes in dragon and den video and it was really good. Do you yourself made it? It was really very good with visualization.


Yep, I made it myself! :slight_smile:


Awesome! :smile:
Even though I didn’t understand all the things. :laughing: As I have never used those things before.


Feel free to ask anything that you want!


What a pleasant coincidence! I made a video using the same library and some more code I wrote myself https://youtu.be/fEJDXfQ4szw


it looks great! Good job!

1 Like

How did you learnt Manim in such short amount of time. Great work.

Great work! Are there any good Manim tutorials?

I umm watched “theoremofbeethoven”'s tutorials to get started and then just searched up stuff whenever I needed help with something

Thanks. My answer is same as what @benritmico has answered above. You can also see the corresponding codes for original 3b1b videos.