R
R
Roma Zvarich2015-04-26 13:01:39
Programming
Roma Zvarich, 2015-04-26 13:01:39

What is Olympiad Programming?

I'm just learning programming.
I often come across the phrase "olympiad programming".
Help me understand what it is and how it differs from "NON-Olympiad"
Google did not find a clear term.
Still met concept "Sports programming". This is the same?
Thanks

Answer the question

In order to leave comments, you need to log in

4 answer(s)
[
[email protected]><e, 2015-04-26
@hisbvdis

Olympiad and sports programming are really two names of the same entity.
Conventional (industrial) programming is aimed at solving business problems using computers. Such tasks are usually characterized by the following:
Even if you do not sell a software product, but, for example, write an open source program or library, you are still interested in business efficiency: I would like to have a simple and reliable code (the more complex the algorithm, the easier it is to make a mistake), the ability to expand and change the program later some time (i.e. think about architecture).
Sports programming, in turn, focuses only on solving formal problems with maximum efficiency in terms of execution time and amount of memory consumed. The most effective way to practice this type of programming is through competitions, such as codeforces or topcoder.. Such competitions last several hours and offer several tasks of varying difficulty. The faster and more the participant decides, the more well done he is.
Thus

  • programs are very small in size - no more than a couple of hundred lines
  • the lifetime of such a program is, at most, a few hours, so you can write it as you like, as long as it works.
    For example, single-letter variables are written much faster than long and meaningful ones, but their purpose is clear only to the author himself and only for a very short time after writing the program.
  • since the program is small, there is no need to split it among several programmers

G
globuser, 2015-05-02
@globuzer

Olympiad or sports programming is actually a programming style aimed at obtaining sports achievements, the main of which are: speed, time, elegance of algorithms and purity of problem solving. the main and most important thing here: a correctly solved problem, in the shortest possible time, taking into account the fact that the execution time of the program of this task is also minimal, while using a minimum of resources, both human and computer ....
this is not the same as practical programming that in life, but sometimes many tasks and their parts from the Olympiad programming are of great benefit for solving problems in life, in practice

P
Puma Thailand, 2015-04-26
@opium

This is programming at computer science olympiads at school and programming olympiads at universities.
It differs in that no one really needs the result, but at work someone needs the result.
Well, there is also an emphasis on algorithms, and often the solution does not even have a graphical interface and all the data comes from files, since it is easier to implement testing.

M
mamkaololosha, 2015-04-26
@mamkaololosha

Solving algorithmic problems for time. Helps to identify the ability to quickly assess the problem and code the solution. Popular in algorithmically high-tech areas of computer science and related companies. Not to be confused with systems programming and application programming.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question