Олимпиада по информатике и работа программиста

Насколько работа программиста схожа с олимпиадой по информатике? Там тоже прям обязательно делать программу так, чтобы она была менее затратной по времени и ресурсам?


Ответы (1 шт):

Автор решения: CrazyElf

Отвечу вопросом на вопрос. Вот есть спортивные олимпиады. Насколько то, что спортсмены делают на олимпиаде, похоже на повседневную жизнь? Обычно вообще не похоже. Вот тоже самое и с олимпиадами.

Да, на каких-то задачах нужно делать код прямо на грани эффективности по времени и ресурсам. Но это мало где так. Если только это обработка миллионов запросов в секунду, как на крупных маркетплейсах или в крупных поисковиках. Но обычно гораздо важнее, чтобы код надёжно работал, чтобы его было просто понимать и т.д. Потому что мало где пишут код один раз и навсегда. Обычно код нужно развивать, дорабатывать и т.д. А код, написанный с глубокой оптимизацией, обычно понимать весьма непросто.

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

Кстати, могу привести ещё один пример. Есть такой сайт Kaggle, там проходят соревнования по машинному обучению. Так вот. К работе реальных дата сайентистов соревнования на Kaggle тоже имеют довольно далёкое отношение. То, что там делается - это только один-два этапа из реальной работы дата сайентистов. А этих этапов в реальной жизни гораздо больше и гонка за сотыми долями метрики как на каггле - это далеко не главное в реальной работе. Или даже вообще не существенно на самом деле по сравнению с другими характеристиками модели, над которой работает дата сайентист.

В общем, это можно сказать почти про любые соревнования. Это довольно далеко от реальной жизни, хотя и имеет некоторое отношение.

→ Ссылка