Majin_Boo's blog

By Majin_Boo, history, 2 months ago, In English,

Hi again! Continuing with my series of bad questions, I'd like to ask if competitive programming is useful as a preparation for computer science research, specially in the field of data structures and algorithms. If yes, what skills are the most used? I hope someone working in academia could tell me in which way CP helps or helped him/her in his/her regular work.

Thanks in advance <3

 
 
 
 
  • Vote: I like it
  • -2
  • Vote: I do not like it

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

CP is more focused upon implementation of the known knowledge in data structure, logic and mathematics. While Research more focused on the study of the structure itself, i.e. analysis of the algorithms, designing new algorithms based on the computing model. In CP we combine algorithms to come up with the solution to the posed problem. For, better understanding of the watch this, https://m.youtube.com/watch?v=xAeiXy8-9Y8 And https://m.youtube.com/watch?v=cpguolx2oms

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

    CP is not "focused upon implementation" and not just "combining algorithms". The most important part of solving a CP problem is still making observations about the problem. It's not really the same as research of course, but still your comment has a weird idea of what CP is.

    • »
      »
      »
      2 months ago, # ^ |
      Rev. 6   Vote: I like it -8 Vote: I do not like it

      I totally agree with you, By "focused over implementation", by that I do not emphasis upon "just read problem and implement naively", but the idea that want to share is that, "implementation" doesn't mean coming up with naive thing, but "read the problem, analyze it, think of known algorithms suitable for your problem, if required develop it(this is on spot research idea), then solve it" .

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

I think competitive programming is the best way to prepare for academic research in many areas of computer science. In AI, maybe the most relevant skill is to implement ideas efficiently and quickly, which is exactly what CP is about. Algorithm theory on the other hand corresponds to the problem solving part of competitive programming. For example marek.cygan and YuukaKazami are very successful researchers in theoretical computer science.

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

    YuukaKazami seems insane to me. Looking at his 2019 publication record, he had 9 first author papers with 2 best paper awards at top theory conferences (FOCS, CCC, STOC, etc.). This was when he was a 2nd year PhD student...

    I would nominate him as the most successful (researcher x competitive programmer).