Competitive Programming: How to Learn from Contests

Поділитися
Вставка
  • Опубліковано 8 чер 2024
  • General, yet also specific advice on why rating shouldn't matter, how you can learn from your mistakes in contests, and how you can upsolve effectively.
    If you couldn't tell, I'm using the new microphone now :)
    Things I said would be in the description:
    Codeforces Visualizer: cfviz.netlify.app/virtual-rat...
    Original Codeforces blog on rating analysis: codeforces.com/blog/entry/79415
    Spreadsheet with full data: docs.google.com/spreadsheets/...
    Some timestamps for the sections of the video:
    Intro 00:00
    Part 1 (value of contests) 00:48
    Part 2 (rating, and dealing with rating loss) 04:25
    Part 3 (analyzing and learning from failures) 10:06
    Part 4 (upsolving effectively) 14:23
    Outro 19:57
  • Наука та технологія

КОМЕНТАРІ • 105

  • @tilakmadichettitheappdeveloper
    @tilakmadichettitheappdeveloper 3 роки тому +102

    "Look deep into your soul, into the dark and foggy mist of your memories"
    - Colin Galen 2021

  • @anupestuff
    @anupestuff 3 роки тому +56

    I have deep rooted fear of string problems. My fear is more than the lack of knowledge. Irrational fear as you say. But you motivate me man. You are touching other people life in positive way. Keep doing such videos.

  • @ojasvsingh5142
    @ojasvsingh5142 3 роки тому +133

    Colin is a motivational speaker orz

  • @harshiit
    @harshiit 3 роки тому +28

    The main reason for not growing rating wise is not learning enough from past contests. The sooner you realise this the faster you gain ratings.

  • @kaladinium7337
    @kaladinium7337 3 роки тому +60

    Hey, the audio quality is a lot better now.

    • @ColinGalen
      @ColinGalen  3 роки тому +17

      Yep, I finally started using a better mic

  • @sukeshseth989
    @sukeshseth989 3 роки тому +8

    Hi, thank you for sharing this, I've been sad because of poor performance in recent contests & this video really helped me figure out what I was doing wrong.

  • @kongzilla2897
    @kongzilla2897 3 роки тому +4

    This video has a whole different vibe...
    Motivated , Loved it :)

  • @joshua_dlima
    @joshua_dlima 2 роки тому

    Thanks for the advice man, I'll try my best to follow it

  • @legendry
    @legendry 3 роки тому +2

    Thanks for such amazing content!

  • @prateekgautam7398
    @prateekgautam7398 3 роки тому +35

    It was weird listening colin clear, I'm used to his previous voice which was bit unique in that microphone.

    • @himansumaurya2883
      @himansumaurya2883 3 роки тому

      if he will lower the lower freq. it will be great. It distort little in 2x. just a suggestion

  • @sashkov1309
    @sashkov1309 2 роки тому

    Wow, this part about removing failed contests made huge impact one me.
    I never thought, how do they change rating in long run, but now my eyes opened, and I fully understand, that its all about my skill. Becoming better at contest will "instantly" compensate all of rating loss.

  • @astroflexx82
    @astroflexx82 9 місяців тому

    Thanks a lot for this. Really helped me.

  • @user-wq9vi7es5g
    @user-wq9vi7es5g 10 місяців тому

    Thanks for the advice man, I'll try my best to follow it. Hey, the audio quality is a lot better now..

  • @jdragon8184
    @jdragon8184 3 роки тому +13

    add this , dont write half baked solution , think it through then write , it improved my rank 3 times

    • @khushitshah678
      @khushitshah678 3 роки тому +2

      So true, don't start coding unless you know exact solution.

    • @nishchayshroff7334
      @nishchayshroff7334 2 роки тому

      Yes my performance also improved after doing this

  • @abhijitmishra746
    @abhijitmishra746 3 роки тому

    This is superb content.

  • @nathanromanelli2845
    @nathanromanelli2845 3 роки тому +2

    thank you colin, very cool

  • @gammastrain5289
    @gammastrain5289 3 роки тому +3

    No beauty in peaks without valleys

  • @anupestuff
    @anupestuff 3 роки тому +2

    @Colin, how do you suggest to watch any video series on any programming topics such as yours. Should we solve the problem ahead of time and then listen to your solution videos? I guess my main question is, how can a person learn from by solving few problems and for remaining, read the solutions because one can't solve all problems with so many websites with so many problems on each of them.
    Or how can I critically listen to any video on programming topics?

  • @aaradhyadixit4322
    @aaradhyadixit4322 3 роки тому +2

    my favourite youtuber :) orz

  • @vinitdhandharia3478
    @vinitdhandharia3478 3 роки тому +5

    Thank You, Bro, I wish I would be able to beat you someday : )

  • @snigdhsinha7235
    @snigdhsinha7235 3 роки тому +6

    One small question, how did you get that "performance" column under your "contests" page? (The column beside the "rating change" column)

    • @ColinGalen
      @ColinGalen  3 роки тому +4

      An extension: greasyfork.org/en/scripts/402180-codeforces-performance

  • @prakharranjan8089
    @prakharranjan8089 3 роки тому +9

    I actually never want to miss contests even though I can solve 1-2 problems in Div2 (I have streaks of 7-8 contests back to back). But on some days I can't join on time(maybe 1hr late because of classes) so should I still participate and submit(which will obviously result in -ve delta) or I should not spoil the problems and virtually participation instead?

    • @ColinGalen
      @ColinGalen  3 роки тому +12

      I probably should have mentioned this in the video. If you're forced to miss some part of the contest, then it's usually okay to virtual it later, as long as you're able to take it as seriously as a contest.
      (My argument about rating representing true skill doesn't apply here, because if you're forced to miss part of a contest, you have an inherent disadvantage vs. other people)

    • @prakharranjan8089
      @prakharranjan8089 3 роки тому +1

      Ok thanks 😀

  • @user-fb7hw1el1c
    @user-fb7hw1el1c 2 роки тому

    Thank You so much🥺🥺🥺🥺

  • @farhansaif3044
    @farhansaif3044 3 роки тому

    Thanks a lot

  • @noob7656
    @noob7656 3 роки тому +1

    How does the performance column work? What does it indicate?

  • @napoleon3242
    @napoleon3242 3 роки тому +6

    Colin, what if I can't solve past 1-2 problems in Educational rounds? What should I do in that case? Should I stop trying or start practicing on the problems list (easy -> hard)?

  • @friedchicken1449
    @friedchicken1449 3 роки тому +1

    Hello galen.Will you make a video of you doing cotext.

  • @nafiurrahmankhadem7178
    @nafiurrahmankhadem7178 3 роки тому

    How do you learn from a problem ( or editorial / solution ) where you already knew every trick / knowledge needed to solve it but you still couldn't solve it?

  • @sanchitkhare7977
    @sanchitkhare7977 3 роки тому +2

    Hey colin can you tell if I should upsolve and practice topics of the current contest and then go take part in next contest or should i take part in every contest?

    • @ColinGalen
      @ColinGalen  3 роки тому +2

      I would say that doing every contest can't hurt, as it can give you a lot of information about where you're lacking in

  • @yashdeore473
    @yashdeore473 3 роки тому +1

    thanks a lot
    😄😄😄😄😄😄😀😀😀😀😀😀

  • @muhammadzayed4692
    @muhammadzayed4692 3 роки тому +2

    When i watch your videos i feel like every thing is easy and go to CF solve problems 😂 , i need your advice how to practice on topics and how can i prepare for icpc your topics stream really help me so much thanx for your hard work .

  • @adarshgaur6706
    @adarshgaur6706 3 роки тому +8

    Hey colin can u make aa separate video about maths background needed for competetive programming

    • @saiprashanth3597
      @saiprashanth3597 3 роки тому +3

      hmm
      there's a lot
      I mean the whole ocean of math is required.
      But yeah
      Not much is required to actually start your cp journey

    • @parsabushehri5488
      @parsabushehri5488 3 роки тому

      Combinatorics is computer style math, and you can just add math proofs and geometry, which these two topics are in high school books

  • @Selim_Hasan_Raj
    @Selim_Hasan_Raj 3 роки тому +3

    Hey,Colin i did 3 contests and i didn't able to solve any question. i don't know what's wrong with me. what should i do right now?

    • @ColinGalen
      @ColinGalen  3 роки тому +8

      Earlier problems are often heavily based on math and reasoning. I would guess that a strategy would be to spend a lot of time just thinking about problems and pursuing random ideas, even the stupidest ones.
      If you can rule out all your wrong ideas, then eventually you'll be able to settle for the right ones. Solving other things like math problems may also help with that sort of reasoning.

  • @dirkneuhauser8213
    @dirkneuhauser8213 3 роки тому

    For me, the majority of the cf contests are in the middle of the day in the middle of the week. Are you guys always taking off?

  • @pavanvenkat9182
    @pavanvenkat9182 3 роки тому +14

    How did you add performance column in your contest page?

    • @ColinGalen
      @ColinGalen  3 роки тому +6

      An extension: greasyfork.org/en/scripts/402180-codeforces-performance

    • @vedbhatawadekar6842
      @vedbhatawadekar6842 3 роки тому +1

      @@ColinGalen what does performance exactly mean though?

    • @Entertainmentexe
      @Entertainmentexe 5 місяців тому

      ​@@vedbhatawadekar6842 It shows what rating suits your performance in that particular contest.

  • @sobieso
    @sobieso 3 роки тому +9

    yayyy sir colin orz

  • @shashwatkasliwal4646
    @shashwatkasliwal4646 3 роки тому +11

    Hi the problem I generally face during div2 rounds is that I get stuck on either B/C and then I just don't feel like skipping a lower problem for a higher problem like D and then I end up not doing either of the problem :(

  • @muj1003
    @muj1003 3 роки тому +2

    i shall go on a game theory crusade on codeforces lol

  • @bharathkalyans
    @bharathkalyans 3 роки тому

    hey @Colin if you are using java as your cp language,could u please share your template thanks!!

  • @yama-mm8qr
    @yama-mm8qr 3 роки тому

    Man, maybe it’s just me, but I feel like participating in contests as a total beginner feels sorta hopeless. You get tunnel-visioned for a single convoluted approach and end up not solving anything because you spent all your time trying to fix trivial errors like runtime exceeding. Also doesn’t help that they don’t even show you the pre test cases that your program failed on.

  • @tdpencil2811
    @tdpencil2811 3 роки тому +3

    Oddly, I miss the old microphone :(

  • @12six69
    @12six69 2 роки тому

    My rating graph is 180degree and I'm stuck with ratings like -10 +7 -2 -9+10.

  • @sid1jha432
    @sid1jha432 2 роки тому +1

    How can we improve our speed 😅

  • @harpalsinhjadeja5571
    @harpalsinhjadeja5571 3 роки тому +2

    Zero dislikes is the proof

  • @kabboghosh1853
    @kabboghosh1853 3 роки тому +1

    wait is over

  • @saiprashanth3597
    @saiprashanth3597 3 роки тому +9

    How to learn from contest:
    When you fst cuz you used real numbers,
    Realize that you'll never ever use them again for solving problems

    • @nishuz
      @nishuz 3 роки тому +1

      lmao ceil nice

    • @ColinGalen
      @ColinGalen  3 роки тому +7

      Not a bad lesson :P
      (although you may need them for geo or problems that explicitly require them)

  • @sauravpandey599
    @sauravpandey599 3 роки тому +4

    How did you get this performance column in codeforces.

    • @ColinGalen
      @ColinGalen  3 роки тому +4

      It's an extension on Tampermonkey/Greasemonkey, you can install it at greasyfork.org/en/scripts/402180-codeforces-performance

  • @alvesandre
    @alvesandre 5 місяців тому

    Why you don't do contests anymore?

  • @gabrielwu5787
    @gabrielwu5787 3 роки тому +2

    In your "optimistic rating change" calculations, you ignored contests on which you would have lost rating, not just the ones on which you did lose rating, right (the two are different because a mild +delta in real life could be a -delta optimistically since you have a higher optimistic rating)? So pretty much you were looking at the subset of contests that maximizes your total current rating?

    • @ColinGalen
      @ColinGalen  3 роки тому +1

      Yes, I calculated each rating change based on the current optimistic rating and made decisions based on that.

  • @notvoidz
    @notvoidz 3 роки тому +4

    :)

  • @adityaj21
    @adityaj21 3 роки тому +4

    I had -400 delta and I'm afraid to submit now😞

    • @ksun8993
      @ksun8993 3 роки тому +1

      What do you mean by Delta here

    • @notvoidz
      @notvoidz 3 роки тому +1

      @@ksun8993 change in rating i.e he got -400 in rating

    • @RomanReigns-ds8hs
      @RomanReigns-ds8hs 3 роки тому +2

      Just upsolve them , upsolving is a way to get good at contests. (As far as u are learning that's totally fine).

    • @adityaj21
      @adityaj21 3 роки тому +2

      @@RomanReigns-ds8hs yeah I upsolve most of them but can't do much in actual contest

    • @RomanReigns-ds8hs
      @RomanReigns-ds8hs 3 роки тому +2

      My suggestion would be just open all problems in different tabs and don't watch ranklist or no of users solved until the contest ends ( this might be a useful suggestion while giving contest).

  • @yatnbangad7893
    @yatnbangad7893 3 роки тому

    Dropping in a comment today at rating 1379. Lets see how much better I get by the end of the year :)

  • @nishuz
    @nishuz 3 роки тому +8

    OTZ LGM WHEN?

  • @drsl1549
    @drsl1549 3 роки тому +4

    nice video after 695

  • @flanker53
    @flanker53 2 роки тому +1

    me who is able to solve only 2 problems..... cries in sadness

  • @adarshshah9141
    @adarshshah9141 3 роки тому

    orz

  • @janvimyadventures1310
    @janvimyadventures1310 2 роки тому

    guitar_wale-bhaiya

  • @erfanmohammed7065
    @erfanmohammed7065 3 роки тому

    :Orz

  • @paulfunigga
    @paulfunigga Рік тому

    Participating in these contests is the reason why people have imposter syndrome. They don't learn real world technologies, instead they learn to participate in contests, and when they get a job, they realize they don't know anything about technologies and they feel stupid.

  • @mathematics6199
    @mathematics6199 2 роки тому +1

    I guess you have atleast 70 percent audience from INDIA

  • @deankjellberg1798
    @deankjellberg1798 3 роки тому

    I recently posted in codeforces about getting upset about being bad and how I should kill myself. Your video has helped me a lot man. Thank... really thanks

  • @gabbar1867
    @gabbar1867 3 роки тому

    Biro please teach comptetive programming from basic

  • @gatoradeee
    @gatoradeee 3 роки тому +7

    Y u donut show your face?

  • @harshsamoliya1954
    @harshsamoliya1954 3 роки тому +1

    My rating is stucked at 5000 at codeforce please help 😂😂😂

  • @ahmedalmohammed6206
    @ahmedalmohammed6206 2 роки тому

    you speak very fast i am not an english person so , i hope you speak less fast