Не совсем понятно. Чтобы каждая лошадь пробежала хоть один раз, нужно 5 заездов, если будет меньше - как миниму 5 лошадей . Если каждый заезд лошадь даёт постоянный результат, то 5 достаточно - все результаты будут известны. Правда, возможен делёж (если возможен), но тогда сколько не бегай, всё равно результаты будут те же. Я что-то упускаю? В общем, если у самых быстрых лошадей возможны одинаковые результаты, то определить победителей невозможно, если же одинаковые результаты невозможны, то, вроде, всё просто и ответ 5.
Кому-то скучно и он задачки на интервью придумывает ? )) Пять заездов - дают 5 самых сильных лошадей, шестой выявит чемпиона (проблема максимум). Со вторым местом немного интересней, так как шанс, что в пятерке чемпиона (первый забег) бежали вторая и третья по силе лошади и он их затмил, поэтому четыре оставшихся быстрых лошадки должны пробежаться с той, что была второй по скорости в пятерке чемпиона, ну и так далее ...
понятно. это как бы самый модулярный способ, но я понимаю о чем ты. прикол этй задачки, имхо, после решения, немного поменять условия и посмотреть на реакцию. ох у нас так любили задалбывать я по привычке ответил,уже в крови )) - сначала пусть хоть как работает, главно чтоб просто и робастно, потом, когда утрясется (один хрен десять раз условия помеяют) оптимизируй сколько влезет
Так часов то нет. Результат дает только сравнительный рейтинг среди 5 лошадей, которые участвуют в заезде. А надо будет потом сравнивать лошадей из разных заездов.
Придумался такой вариант: Делаем первый заезд, отправляем в сторону его победителя (считаем его временным победителем), двоих худших откидываем, а к оставшимся двоим берем еще троих новых и делаем следующий заезд. Если эти три новых во втором заезде показали худшие результаты, чем двое из первого заезда - откидываем их и берем еще троих новых, и так всего 7 раз, включая второй заезд (оставшиеся 20 / 3 = 6 и 2 в остатке). Получается минимум 8 заездов. Но если в любом из повторных заездов хоть один из тройки новых покажет результат лучше, чем двое оставшихся с первого заезда - то нужно сравнивать с "временным победителем". Если же один из тройки новых покажет второе место, то тут уже нужно отсеять 3-го из первого заезда и продолжать сравнивать с оставшимися тройками. В последних двух случаях количество заездов будет больше 8, а сколько конкретно - считать что-то не хочется :))
Comments 72
Reply
Reply
Reply
Reply
Пять заездов - дают 5 самых сильных лошадей, шестой выявит чемпиона (проблема максимум). Со вторым местом немного интересней, так как шанс, что в пятерке чемпиона (первый забег) бежали вторая и третья по силе лошади и он их затмил, поэтому четыре оставшихся быстрых лошадки должны пробежаться с той, что была второй по скорости в пятерке чемпиона, ну и так далее ...
Reply
Предложенный способ даст правильный результат, но есть более эффективный метод..
Reply
я по привычке ответил,уже в крови )) - сначала пусть хоть как работает, главно чтоб просто и робастно, потом, когда утрясется (один хрен десять раз условия помеяют) оптимизируй сколько влезет
Reply
Reply
5?
Reply
А надо будет потом сравнивать лошадей из разных заездов.
Reply
Reply
Reply
Reply
Reply
Reply
Reply
Делаем первый заезд, отправляем в сторону его победителя (считаем его временным победителем), двоих худших откидываем, а к оставшимся двоим берем еще троих новых и делаем следующий заезд.
Если эти три новых во втором заезде показали худшие результаты, чем двое из первого заезда - откидываем их и берем еще троих новых, и так всего 7 раз, включая второй заезд (оставшиеся 20 / 3 = 6 и 2 в остатке). Получается минимум 8 заездов.
Но если в любом из повторных заездов хоть один из тройки новых покажет результат лучше, чем двое оставшихся с первого заезда - то нужно сравнивать с "временным победителем". Если же один из тройки новых покажет второе место, то тут уже нужно отсеять 3-го из первого заезда и продолжать сравнивать с оставшимися тройками. В последних двух случаях количество заездов будет больше 8, а сколько конкретно - считать что-то не хочется :))
Reply
Reply
Leave a comment