Answer the question
In order to leave comments, you need to log in
Benefits of Olympiad Programming, Myth or Reality?
Such a question has ripened. Is it worth spending a lot of time and memorizing algorithms on graphs, combinatorics, sorting to the holes, or should we focus on knowledge of technologies and a superficial study of algorithms will be enough?
Answer the question
In order to leave comments, you need to log in
Is it worth it to spend a lot of time and screw up algorithms on graphs, combinatorics, sorting to holes, or should we focus on knowledge of technology and a superficial study of algorithms will be enough?
It seems to me that there is as much benefit from Olympiad programming as from higher mathematics - a tenth part is useful in life, but it puts the brain in order. And it won't hurt no matter what you do. In the choice between technologies and algorithms, I would stop at the second one. Technology changes, algorithms are fundamental
It depends on what you are going to do: riveting sites is one thing, and going through 2 ^ 48 options in the shortest possible time is quite another.
Before deciding to choose between one thing and another, I would recommend asking the question: "Are there any more important things?". I mean, now you can choose between the theory of algorithms and technology, but at the same time, there is suddenly a more important skill that is not pumped as you would like. I would venture to suggest that all of a sudden you need to pump a mega-skill for any programmer: "English at the level of reading technical literature." If I guessed it, then you better spend time on it!
Unfortunately, this is a very subjective question, because it is impossible to make a pure experiment - take one programmer, in one universe he went into sports programming, and in another - not, and compare his successes. Everyone who did it will most likely praise it, those who didn’t do it will say that it’s necessary.
I practiced and I will say this - practice if you really get high, feel the excitement, count the days until the contest. And if it turns into suffering - quit without regret.
Here's a comprehensive overview of the pros - codeforces.com/blog/entry/1851 This is all true, but it doesn't come close to answering the question of whether you need it or not. Because the list of things that would be good to learn / master / upgrade / try / do is endless, and life is finite.
The benefit of Olympiad programming is that you are a) able to find non-standard solutions b) not afraid to apply them. The second aspect can by the way be a minus. For example, you came up with an ingenious, algorithm of something - masterfully used the knowledge of undocumented features of your favorite language, operating system, etc. ... And then the boss comes and says - the concept has changed - besides this - they also need support for Windows 3.1 - they have it there the drilling rig turns out to have built-in computers from the 80s. Well, just the same - recompile the project under it and that's it. And you understand that from the beginning you need to do absolutely everything.
The second point is that many of the algorithms set forth in the books of the 70-80s are already outdated today - though I’m more likely to solve difurs numerically, I don’t know about graphs and sorting.
In general, as he saidvilgeforce - what will you do? If you don’t know yet, then of course it’s better in breadth than in depth. It is better to know that algorithms exist for something, they behave like this and they have such pluses and such minuses - than not knowing about them at all and blinking when communicating with the boss.
to be
honest, my whole base in IT is one year of school when I won the programming olympiad, everything that they gave me later was minuscule compared to this one wonderful year in the computer science class
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question