Нелюбовь к олимпиадным задачам на собеседованиях
От: cppguard США  
Дата: 22.10.21 15:19
Оценка: +4
Яндекс прислал ссылку на какой-то там оффлайновый контест, который можно решить в любое удобное время.
  Пример задачи
Реализация большого проекта — очень сложная задача, и при разработке программист Алексей руководствуется следующим принципом: сначала написать работающий прототип, а потом улучшать код. Чтобы не забыть, что именно отложено на потом, на каждый такой долг Алексей заводит на себя задачу в специальной системе Yagile.
Система устроена следующим образом: для каждой задачи задается дедлайн — день
t
i
. Если задача не решена до этого момента времени, то в задачу приходит робот и пишет комментарий о том, что задачу надобно закрыть. Если через
X
дней задача не решена, то робот приходит снова. Так продолжается до тех пор, пока задача не будет решена.
Алексей каждый день заходит в Yagile и видит сообщения от робота. Если Алексей не хочет приступать к решению накопленных задач, то он прочитывает все сообщения с помощью одной кнопки и занимается другими делами. Однако Алексей понимает, что так долго делать нельзя, поэтому он разрешает себе нажимать на эту кнопку ровно
K

1
раз, а на
K
-й раз садится и решает все задачи разом (даже те, у которых не настал дедлайн).
Определите день, когда Алексей закроет все задачи.

Открыл задачи, почитал условия и внезапно осенило — да это же ЧГКашная тема, когда вопрос ставится в духе "Таких ИХ использовали европейские купцы в IIX веке, современные они применяются в кораблестроении. Мы не просим назвать ИХ, назовите ЕГО, родственным словом, заимстованным из древневавилонского". И что я хочу сказать: я люблю алгоритмы, люблю решать интересные задачи, в школе и университете участвовал в ICPC и других олимпиадах. Также люблю и я задачи на логику и разного рода квизы. Но терпеть не могу игру "догадайся, что за мысль мне пришла, пока я мылся в душе". Возможно, большинство негодования по поводу проведения собеседований в подобном формате вызвана именно нежеланием держать в голове дурацкие условия. Ведь если задача задача в виде "дано бинарное дерево, необходимо найти в нём все пути от корня до листа длиной не менее N и не более M", то даже при поверхностном знании алгоритмов её несложно решить. Может не самым оптимальным способом, но можно. А так вся сложность сводится именно к разбору, как говорят олимпиадники, бэкграунда. И тут можно возразить: "Но в реальном мире именно так и приходится делать, когда задачу ставит заказчик". Несомненно, но только вот если я слышу странные условия, то почти всегда это означает, что заказчик играет в инженера и изобретает велосипед. Самые лучшие инженерные решения просты, изящны и надёжны. Но это не отменяет того, что они могут быть построены на базе сложной химии и физики, просто нужно различать сложность всей конструкции и сложность отдельного механизма. Так может быть стоит проверять на собеседовании умение строить конструкции, а не механизмы?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.