galen_colin's blog

By galen_colin, 3 months ago, In English

Hey guys!

I have a new (for me, at least) idea for stream content that I'm a fan of right now. The main idea is that I'll pick a particular topic — e.g. dynamic programming, greedy, binary search, etc. — and binge a bunch of problems on that topic for a few hours. I'll probably also start off the stream with an overview of what the topic is and/or what it achieves.

I feel like this idea has some advantages:

  • It gathers a lot of problems and ideas for a topic into a given video (this is an advantage because certain ideas often relate to other ones in the same topic)
  • It covers not only common usages of the topic but also certain tricks that only show up in practice rather than theory, like implementation tricks
  • It can easily cover a wide range of difficulties
  • It's more of a chill stream than covering a particular contest :)

What do you think about this? Either way, interested or not, I've opened a poll where you can decide on the first topic that'll be covered. You can see the stream time on the sidebar (here) or at the post (on youtube). For now, I'm gonna stick with beginner topics, and we'll see where it goes later.

18 hours-ish from now, I'll make a big mashup of problems of that topic and release it here, so you'll be able to see/try the problems beforehand.

UPD: Sorry that this is a bit late, but it looks like dynamic programming wins by a landslide! You can find the mashup here (ping me if the link doesn't work), and you should be able to preview and attempt the problems beforehand. The difficulty distribution is:

Distribution

On another note, I do recommend familiarizing yourself with the topic beforehand — I'll try to explain it somewhat, but it's better to have your own understanding of it

UPD 2: For archive reasons, I'll add the stream replay here: https://www.youtube.com/watch?v=zDEQaDl3cso. I ended up covering problems A-H and K, and may cover the others in a future stream.

 
 
 
 
  • Vote: I like it
  • +152
  • Vote: I do not like it

»
3 months ago, # |
  Vote: I like it +14 Vote: I do not like it

It will be awesome.

»
3 months ago, # |
  Vote: I like it +3 Vote: I do not like it

Awesome, I love the idea, just voted!

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

It is sad that I have to sleep while you are streaming.

»
3 months ago, # |
Rev. 2   Vote: I like it 0 Vote: I do not like it

Where are you taking these problems from by the way?

  • »
    »
    3 months ago, # ^ |
      Vote: I like it +1 Vote: I do not like it

    These are just randomly selected from Codeforces. Unfortunately, I can't really quality check them beforehand, because the whole idea is that I solve them live.

    • »
      »
      »
      3 months ago, # ^ |
        Vote: I like it +24 Vote: I do not like it

      Is it really important to solve them live without looking at them a few minutes in advance? Will seeing them earlier for a few minutes each change what you say during a stream? Will you skip saying something valuable then? Maybe small quality control in advance has more advantages instead. (I'm not sure about either side.)

      • »
        »
        »
        »
        3 months ago, # ^ |
          Vote: I like it +9 Vote: I do not like it

        I think people like to watch how you approach a completely unseen problem — from reading the statement for the first time up till getting the AC. If you've read the statement already, it's not that anymore.

        • »
          »
          »
          »
          »
          3 months ago, # ^ |
            Vote: I like it 0 Vote: I do not like it

          I'm still not sure about this. Here's a counterargument: It's cool to see that a few times and then it loses any value. It isn't interesting to see the same person read the statement every time and think about it first.

          Similarly, I'd like to see somebody setting their environment and opening a new file once but I don't want it every time.

          • »
            »
            »
            »
            »
            »
            3 months ago, # ^ |
            Rev. 2   Vote: I like it +11 Vote: I do not like it

            Fact: People text me that they want to know how I approach the problems, so they ask me to do such videos everyday. ( Apparently a lot of people seem to believe that there's one "correct method" of approaching the problems and they want to know that)

            Opinion: Regarding the quality, I think it would be best if another responsible person curates the questions that are solved in the stream.

          • »
            »
            »
            »
            »
            »
            2 months ago, # ^ |
              Vote: I like it +9 Vote: I do not like it

            Similarly, I'd like to see somebody setting their environment and opening a new file once but I don't want it every time.

            I wouldn't say this is a reasonable analogy — every problem is different, and for different problems, there are different ways to approach them and many of these approaches may be useful to be introduced to. Even constrained to the topic of, say, dynamic programming, there are a ton of different methods to it.

            But you do bring up an interesting point, I'm honestly not sure how big the difference is between seeing the problem for the first time and having seen it somewhat beforehand.

            I think a good setup is something like what HealthyUG mentioned: having some other person set up the problemset, which ensures both quality and includes as much thought process as possible. I did consider this beforehand (and will in the future), but it's hard to get people in my discord to do anything :P

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Please also give the basic idea of dp (top down and bottom up) approach. how to think this problem can be solved by DP. Waiting for the stream , Excited!!

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

You can also maybe do NOI 2020 Finals P2 Discharging

  • »
    »
    3 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    I'll take special requests if there's time after the mashup problems.

»
3 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Very interesting idea.

»
3 months ago, # |
  Vote: I like it +8 Vote: I do not like it

I am sure there will be Future Streams on various topics, it would be much easier and helpful if you could make a separate playlist on Youtube for these particular stream replays.

»
2 months ago, # |
Rev. 4   Vote: I like it +11 Vote: I do not like it

Can you explain problems J and N in the next stream galen_colin?? we are waiting for next stream!!!

Suggestion: No need to have 15 problems in every topic (As explanation would take so much time as well as most people will solve either 6 or 7 and then stop. So it would be better if we have 6 or 7 problems with difficulties (1100 , 1300 , 1400 , 1500 , 1700 , 1800 , 2000) — But the problems must be good).It is just a suggestion.

  • »
    »
    2 months ago, # ^ |
      Vote: I like it 0 Vote: I do not like it

    In terms of covering the mashup problems I didn't get to, I'll have "finishing DP mashup" as an option to vote for on the next topic stream.

    And yeah, 15 was absolutely an overestimate. I didn't realize it would take that long to just get through the easier problems. But this was only my first time doing something like this, so I'll definitely adjust for the future.

»
2 months ago, # |
  Vote: I like it 0 Vote: I do not like it

Hi, Could you explain why max(dp(i,j), cost(a_i, b_j)) was used in problem E-office keys? Thanks.