ilyaraz's blog

By ilyaraz, 13 years ago, In Russian

Мне бы хотелось написать, что я думаю про следующий диалог в комментариях к этому посту:

Horuka: а по вашей логике олимпиады для студентов не нужны?
gurovic: не просто не нужны - они вредны, губительны и иногда смертельны в смысле содержательной деятельности человека в дальнейшем.

Сразу оговорюсь: я знаком с олимпиадами не понаслышке, поэтому мое экстремальное мнение не произрастает из дремучести. Еще замечу, что речь будет идти в основном об ACM ICPC.

Так вот. В студенческих олимпиадах имеет смысл участвовать только в одном из двух случаев:

  • вы получаете удовольствие от решения задач,
  • вы чувствуете, что можете добиться больших успехов (выиграть финал, например), и получаете от этого удовольствие.
Если ни одно из этих условий не выполняется, то нужно немедленно завязывать с олимпиадами и посвятить освободившееся время чему-нибудь более осмысленному (например, коллекционированию спичечных коробков).

Да-да, именно более осмысленному.

Во-первых, студенческие олимпиады не научат вас программировать. Начав работать над серьезным проектом, вы с удивлением обнаружите, что умение быстро писать лапшу на 300 строчек скорее вредно нежели полезно.

Во-вторых, студенческие олимпиады не научат вас алгоритмам. Более того, олимпиадные задачи имеют лишь очень-очень слабое отношение как к теоретической, так и к "практической" computer science.

В комментариях, из которых взят диалог, проскальзывает мысль, что из победителей олимпиад часто получаются годные инженеры для серьезных контор (см. Google). Но по-моему здесь перепутана причина со следствием. Победитель ACM ICPC попадает в Google не потому, что он играл в олимпиады и чему-то научился, а потому что он уже пришел в олимпиады с головой на плечах (бывают редкие исключения, но они и правда очень редки). Это примерно как из утверждения "наличие миллиарда долларов сильно коррелирует с наличием яхты" сделать вывод, что если купить яхту, то станешь миллиардером.

Ну, и напоследок скажу, что даже те алгоритмы, которые используются в олимпиадах, изучаются олимпиадниками лишь постольку-поскольку. Правильно писать алгоритм Дейкстры и искать отрицательный цикл в графе я научился отнюдь не при подготовке к олимпиадам.
  • Vote: I like it
  • +32
  • Vote: I do not like it