Ron0Studios's blog

By Ron0Studios, history, 3 years ago, In English

Hello everyone!

I've recently watched the black box method that galen_colin published on Youtube, some time ago, and was considering a polished way of getting some form of longer term memory for many harder algorithms and data structure implementations that may be needed n future contests, or implementations of common algorithmic problems (e.g coin change) so that it can be easier to quickly recognise problems when you first see them. I'm currently doing Mandarin Chinese for my GCSE (school exams that you do at 15-16), and have been using Anki to get some kind of long term memorisation of vocabulary.

I've done this for 3 months, and it has worked spectacularly, and am wondering if it is a good idea to try find some system of practising CP using Anki? What are your thoughts on this?

I might try and write an article on how you can set up anki for competitive programming, if it actually helps gain some experience.

Thank you!

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

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

I think for most of us it wouldn't be helpful. I could only imagine it being useful for people participating in contests like IOI, as a way of memorizing some algorithms maybe a few weeks before the contest. In any other cases, I believe just keeping practicing will be more productive, or if you're really willing to learn an algorithm, then go write it 10 times from scratch and it will most likely stick (I wouldn't do it personally). Also, if you just participate in online contests, you can search the algorithm, which I think is totally fair.

As for some general techniques or ideas in problem solving, I also think it's not necessary. If you read a problem you will surely recall you did something similar. It might take you some time to remember, it's ok, but if you don't manage to solve it, it just means you didn't fully understand the idea behind the solution of the problem you did before (at least that's how I see it). In general, I think we can forget problems easily, because we do a bunch of them, but the ideas behind them will remain long term without even making an effort if we understand them. This is not exactly what you expect from learning a language or learning names in geography. Although they have some ideas easy to remember, they are heavy memory based, and you will surely feel the progress after learning, say, 1000 new words of vocabulary.

That said, it would be interesting to see an Anki deck for competitive programming, just curious to see how it would work.

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

    Thanks for the view! In hindsight, I can say that anki is really best suited for very large sets of information, like the vocab in a language. I feel like in the field of competitive programming there are only so many algorithms you need to know, with the very uncommon ones just being subsets of other ones, which tangles information around.

    But maybe integrating this with Obsidian? I'll probably leave that for another post, you'll see what i mean :)