Иллюстрации Полины Романовой
Иллюстрации Полины Романовой
х/ф Призрачная нить (реж. Пол Томас Андерсон)
х/ф Призрачная нить (реж. Пол Томас Андерсон)

Задача о разборчивой невесте:

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

Как принцессе действовать, если она знает только число женихов?

Эта статья написана по мотивам лекции, которая я недавно прочел на Летней Школе. Слайды можно найти в моём телеграм канале Кроссворд Тьюринга Подписывайтесь!) 

От игр к терверу

Задачу о невесте удобно переформулировать как игру между Аней и Борисом

Задача о карточках: В начале игры Аня выписывает на 10 карточках по числу. Они могут быть любыми, но не должны повторяться. Аня тасует карточки и вскрывает их по одной. Цель Бориса — остановить игру на наибольшем из чисел. Он знает только, что карточек десять

Гарантировать Борису победу невозможно. Если известно, как он будет играть, Аня всегда может разложить карточки так, чтобы он проиграл. Поэтому мы ищем стратегию, которая приводит к победе чаще других — то есть выигрывает при наибольшем числе возможных раздач

Например, можно выбрать первую карточку — или последнюю, или случайную. Вероятность успеха у таких стратегий всего 10%. Но есть стратегия, которая приводит к победе с вероятностью больше 1/3 — независимо от числа карточек. Это знаменитое правило 37\%:

Правило37\%:пропустить примерно37\% карточек и взять первое число, которое больше всех предыдущих

Эта стратегия оптимальна (для достаточно большого количества карточек) — ее вероятность успеха больше, чем у любой другой. То, что она работает для любого количества женихов — красивый пример предельный теоремы в теории вероятностей

Число 37% возникает не случайно: это 1/e. Мы докажем это правило и заодно поймем, что такое число e на самом деле

Зачем это нужно?

Во многих жизненных ситуациях приходится делать выбор, не зная всех вариантов:

  • предложить или принять оффер;

  • найти самую дешёвую заправку (интересный ресторан, обменник с лучшим курсом) на вашем маршруте;

  • снять подходящую квартиру, пока её не перехватили;

  • или даже — выбрать партнёра

Мартин Гарднер
Мартин Гарднер

Задачу о разборчивой принцессе популяризовал Мартин Гарднер

Одно из первых решений принадлежит совесткому математику Евгению Дынкину, но говорят что еще Кеплер использовал правило 37% для того, чтобы выбрать вторую жену

Обобщение задачи — тема докторской диссертации Бориса Березовского

Чтобы применить задачу к таким ситуациям, нужно чуть-чуть обобщить нашу игру. Например:

  • можно рассматривать любое фиксированное число карточек — хоть тысячу;

  • можно предположить, что у каждой карточки есть срок годности, когда к ней ещё можно вернуться;

  • или считать, что число карточек неизвестно, но игра идёт фиксированное время, и известно распределение карточек по времени.

Все эти обобщения можно получить тем же путем, который мы сегодня пройдем. Пусть стратегии уже не будут такими наглядными, как правило 37\%, — но их можно вывести, и они остаются оптимальными


В финале статьи вас ждет пример такого вопроса, над которым можно подумать самостоятельно

Новый взгляд на классику

Возможно, вы уже слышали о правиле 37\%. О нем часто рассказывают, но мне хочется не просто дать готовый алгоритм, а показать, откуда он берётся и почему оптимален

Часто алгоритмы — это эвристики, и доказательств оптимальности либо нет, либо они слишком сложны. Повезло, что в задаче о невесте это не так! Мы вместе поймём, какими свойствами должен обладать оптимальный алгоритм, и сами изобретём правило 37\%шаг за шагом

Такой путь подробно изложен в брошюре «Разборчивая невеста» Сабира Меджидовича Гусейна-Заде. Но пройти его не так просто: формулировки тонкие, шаги технические, и понятно пересказать всё это в короткой статье почти невозможно

Пару недель назад я узнал про Теорему о Шансах, которая охватывает гораздо более широкий класс игр — и доказывается гораздо проще! Она опубликована в 2000 году, но на русском языке о ней вообще ничего не написано

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

В этой статье мы разберём Теорему о Шансах и выведем из неё правило 37\%. Подробнее об устройстве теоремы и её роли — в следующем разделе

Для начала я хочу рассказать общий план, следуя которому мы прийдем к правилу 37\%. Вместо того чтобы разбирать задачу о невесте, мы рассмотрим более общие игры. Чтобы придумать это обобщение, понадобится понятие лидеров раздачи

Лидеры раздачи

Аня выкладывает перед Борисом десять карточек с числами. Например, таких:

Борис должен остановиться на карточке с самым большим числом. Делать это на −0.5 — бессмысленно: уже были числа больше него, так что оно точно нам не подходит

Пример раздачи. Лидеры выделены зеленым
Пример раздачи. Лидеры выделены зеленым

Назовем лидерами раздачи карточки с числами, большими всех предыдущих

В этом примере лидеры

−17.2, \; 0, \;3.14, \;42, \;9999

Первая карточка — всегда лидер. Лидеров обычно несколько (в среднем около трех)

Простое, но важное замечание: Борису нужно найти последнего лидера — это и есть карточка с самым большим числом

Задача о лампочках

Задача о невесте оказывается частным случаем другой, более общей игры

Задача о лампочках: Лампочка вспыхивает 10 раз — красным или зелёным.
Цель Бориса — остановиться на последнем зелёном сигнале. Ему известны вероятности зелёного и красного сигнала. Они могут зависеть от номера вспышки

Удивительно, но найти оптимальную стратегию в этой, очень абстрактной ситуации — проще, чем в задаче о невесте. Теорема о Шансах — именно об этом

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

Угадай последнюю шестерку: Аня бросает кубик 10 раз и по одному называет Борису результаты. Цель Бориса — остановить Аню на последней шестёрке

Это частный случай задачи о лампочках: она загорается зелёным на шестёрке, красным — на остальных числах. Тут вероятности не зависят от номера хода. Все наши рассуждения будут относиться к общей задаче, но на примере с кубиком легче понять, что происходит

Момент остановки

Будем говорить, что t — оптимальный момент остановки, если лучшая стратегия это

A_t: Борис пропускает ходы вне зависимости от сигналов, а когда остается t ходов до конца говорит «стоп» на первом зеленом сигнале

Упражнение: в игре «угадай вторую шестёрку» нет такого момента!

Теорема о Шансах — о том, что оптимальный момент остановки всегда существует в задаче о лампочках, и о том, как его найти

Сегодня мы:

  • докажем, что в задаче о лампочках существует оптимальный момент остановки

  • найдём формулу, по которой его можно вычислить (это и есть Теорема о Шансах)

  • применим её к задаче о невесте — и увидим, откуда берётся правило 37\%

Определение оптимального момента остановки выглядит странно. Почему вообще нужно искать такие стратегии? В следующем разделе мы придем к этому понятию постепенно

Мы начинаем анализировать задачу о лампочках с нуля. Пока у нас нет ни формул, ни списка стратегий — мы ничего не знаем про то, как именно должен действовать Борис

Но мы точно знаем, что какая-то оптимальная стратегия существует. Сейчас мы ее проанализируем и увидим, что у неё есть момент остановки

Пусть Борис действует оптимально. Как он принимает решение после зеленой вспышки? Предположим, что осталось n ходов до конца игры. Рассмотрим две вероятности:

  • S_n: за оставшиеся n ходов зеленых вспышек больше не будет

  • C_n: Борис выиграет, если продолжит игру и будет действовать оптимально

Тогда, если S_n > C_n выгоднее сказать «стоп», если S_n < C_n продолжать игру

Решение Бориса зависит только от того, какой сейчас по счёту ход, а не от того, что происходило раньше. Это логично — прошлое не влияет на последний зеленый сигнал

Оптимальная стратегия устроена просто: у Бориса есть список номеров, и если лампочка моргнула зеленым на одном из них — он останавливается, а в остальных случаях — продолжает игру. Сейчас мы поймем, как этот список может выглядеть

Как меняются Sₙ  и Cₙ ?

S_n убывает: чем больше времени — тем меньше шанс, что все сигналы будут красными
C_n не убывает: больше времени — больше доступных стратегий, выше шанс выиграть

Получается, чем меньше ходов осталось Борису, тем больше оснований остановить игру

Формальное объяснение

Пусть G — вероятность зелёного сигнала, R = 1 - G — красного. Вероятность G может быть любой — и даже зависеть от номера вспышки

Все n+1 сигналов будут красными с вероятностьюS_{n+1} = R \cdot S_n < S_n

Вероятность, что Борис выиграет за n+1 ход, действуя оптимально, это:

  • если первый сигнал зелёный — наибольшее из чисел S_n и C_n

  • если первый сигнал красный — число C_n

Итого:

Значит, S_n убывает, а C_n не убывает

Момент остановки — это
Момент остановки — это t=6

Посмотрим на графики S_nиC_n

Можно найти точку t, до которой  t , а в точке t и после наоборот — S_n < C_n(если S_n > C_n всегда, положим t=10)

Мы убедимся, что t – момент остановки

Что делать Борису?

Пусть до конца игры осталось n ходов и Борису надо решить, как играть

  • если n \ge t, то S_n < C_nпропускаем ход независимо от сигнала

  • как только n < t, то S_n \ge C_nговорим «стоп» на первом зеленом сигнале

Значит,t — оптимальный момент остановки игры. Пока мы не знаем, чему равно t, но знаем, что самая лучшая стратегия есть среди списка A_1, A_2, \dots, A_{10}

Мы свели бесконечное множество возможных стратегий к десяти кандидатам
Осталось понять, какая из них даёт наибольшую вероятность выигрыша

Упражнение: Найдите оптимальную стратегию в игре «угадай последнюю шестерку». Для этого посчитайте вероятности победы \mathbb{P}(A_n) каждой из стратегий A_n (математически или смоделировав их на компьютере) и сравните их

Есть формула, которая точно указывает оптимальный момент остановки в задаче о лампочках — это и есть содержание Теоремы о шансах. К ней мы и перейдём

Наша цель — найти лучшую стратегию среди A_1, A_2, \dots, A_{10}. Напомним, что A_n устроена так — Борис пропускает ходы, а когда остается n берёт первую зелёный сигнал. Её вероятность победы обозначим за \mathbb{P}(A_n)

Сначала разберём случай с постоянными вероятностями — там всё совсем просто. Потом перейдём к общему случаю: формулы станут чуть длиннее, но логика не изменится.

Разминка

Для начала мы найдем момент остановки в задаче о лампочках в предположении, что вероятности зеленого и красного сигнала G и R не зависят от номера хода

Стратегия A_{n+1} приводит к победе в двух случаях:

  • единственный зеленый сигнал первый — с вероятностью G \cdot R^n

  • сигнал красный, но в итоге Борис победил — с вероятностью R \cdot \mathbb{P}(A_n)

Итого  \mathbb{P}(A_{n+1}) = G \cdot R^n + R \cdot \mathbb{P}(A_n). Сравнивая с \mathbb{P}(A_n), получаем:

Если Борис использует A_n, он побеждает, когда из последних n сигналов зеленый ровно один. Таких ситуаций n, вероятность каждой G \cdot R^{n-1}. Значит, вероятность победы A_n равна  \mathbb{P}(A_n) = n \cdot G \cdot R^{n-1}. Подставим эту формулу и получим критерий:

Вероятности для
Вероятности \mathbb{P}(A_{n})для G=1/6

В игре «угадай последнюю шестерку» такие вероятности:

G = 1/6, R = 5/6, G/R = 1/5

Значит \mathbb{P}(A_{n}) растут до t = 6, а потом убывают. Соответственно, оптимальный момент остановки 6

Это рассуждение работает для любого количества сигналов — а не только для 10

Главная теорема

Пусть теперь вероятности зависят от номера хода: на n-м ходу с конца вероятность зелёного сигнала равна G_n, красного — R_n = 1 - G_n. Обозначим ch_n = G_n / R_n — шансы на зелёный сигнал. Если проделать все тоже самое, получится критерий

Если вероятности не зависят от n, то ch_n = G/R, и этот критерий дает ch_n = G_n / R_n

Доказательство критерия

Обозначим \sigma_n = ch_1 + ch_2 + \dots + ch_n. Стратегия A_n приводит к победе, если среди последних n вспышек ровно одна зелёная. Вероятность этого:

Точно также, как в разминке, получаем неравенство:

Подставляя выражение для \mathbb{P}(A_n), получаем:

Упражнение: Сколько оптимальных стратегий может быть в задаче о лампочках?

Будем складывать шансы по порядку: ch_1 + ch_2 + \dots + ch_n. Пусть t — первый момент, когда эта сумма превысит 1 (если она всегда \le 1, положим t = 10). Тогда

Теорема о Шансах (Bruss, 2000) Стратегия A_t оптимальна, а вероятность ее победы равна \mathbb{P}(A_t) = (R_1 \cdot \dots \cdot R_t) \cdot (ch_1 + \dots + ch_t) \approx R_1 \cdot \dots \cdot R_t

Осталось применить Теорему о Шансах к задаче о разборчивой невесте

В задаче о невесте зелёная лампочка загорается тогда, когда текущая карточка — лидер раздачи, то есть число на ней больше всех предыдущих

Рассмотрим ход n, считая с конца. Его номер с начала 11 - n. Вероятность того, что именно здесь окажется наибольшее число среди первых карточек, равна 1/(11-n):

Таким образом, шансы равны ch_1 = \frac{1}{9},\quad ch_2 = \frac{1}{8},\quad \dots,\quad ch_9 = 1

Сумма шансов на графике
Сумма шансов на графике

Складываем шансы с конца, пока сумма не превысит 1. Это происходит на шаге t = 7

Значит, оптимальный момент остановки равен 7, оптимальная стратегия — пропустить 3 карточки и взять первого лидера. Вероятность успеха примерно

\mathbb{P}(A_7) \approx \frac{9}{10} \cdot \frac{8}{9} \cdots \frac{3}{4} = 30\%

Теперь перейдём к общему случаю, где карточек может быть сколько угодно. Нам нужно научиться приближённо считать сумму шансов. Тут нам поможет геометрический взгляд

Сумма шансов и площадь

Чтобы посчитать сумму шансов, посмотрим на неё как на сумму площадей прямоугольников

Рассмотрим прямоугольники с шириной 1/6, высотой 1, 6/7, ..., 6/11и площадью 1/6, 1/7, ..., 1/11

Получается, сумма шансов примерно равна площади под гиперболой y = 1/x от x = 1 до x = 2

Аналогично, любая сумма вида σ = 1/n + 1/(n+1) + ... + 1/(n+m−1)приближённо равна площади под гиперболой от x = 1 до x= 1+n/m=(n + m)/n

Теперь на сцену выходит число e. По определению, это такое число, что площадь под гиперболой от 1 до e ≈ 2.718 равна 1. Значит,

Правило

Пусть женихов не 10, а, скажем, 1000

Мы ищем t, для которого  1/t + 1/(t+1) + ... + 1/999 ≈ 1Это происходит, когда

Число 1/e\approx 0.37, так что t \approx 370. Значит, оптимальная стратегия:

Пропустить ≈ 370 женихов и выбрать первого, кто лучше всех предыдущих

Вероятность победы \displaystyle \frac{999}{1000} \cdot \frac{998}{999} \cdot \dots \cdot \frac{t}{t+1} = \frac{t}{1000} \approx 37\%

Этот результат справедлив для любого (достаточно большого) числа женихов — это и есть правило 37 %. Получается, и алгоритм и ответ не зависят от числа женихов

Ура! Мы прошли весь путь и переоткрыли правило 37\% Мы поняли, что в задаче о невесте обязательно существует оптимальный момент остановки. Научились его находить с помощью Теоремы о Шансах. А заодно — поговорили о площади под гиперболой и числе e

Спасибо, что дошли до конца! Я надеюсь, этот путь оказался увлекательным) Подписывайтесь на мой тг-канал Кроссворд Тьюринга, оставляйте комментарии и делитесь статьей. Это мотивирует писать новые тексты — и очень радует

Материалы и ссылки

Кроме слайдов моей лекции, могу посоветовать следующие источники

P.S. Задача

Борис ищет квартиру в новом городе. Он договорился о 12 показах: 3 в понедельник, 2 во вторник, 3 в среду, 1 в четверг и 3 в пятницу

Каждый вечер он решает: выбрать одну из просмотренных сегодня квартир или отказаться — тогда он больше к ним вернуться не сможет. Борис хочет снять лучшую из 12 квартир

Придумайте оптимальный алгоритм и найдите его вероятность победы

Комментарии (32)


  1. vadimr
    16.07.2025 15:46

    Я пропустил или не понял, но хотел бы понять: почему мы в задаче о лампочках уверены, что оптимальная стратегия обязательно заключается в одной из An?

    Среди An, безусловно, есть какая-то лучшая, но почему она обязательно лучше любой возможной стратегии вообще?


    1. d1-d5 Автор
      16.07.2025 15:46

      Добрый вечер! Это доказывается в разделе 1. В нем мы рассматриваем оптимальную стратегию и выводим, что у нее есть момент остановки t - точка, сразу после пересечения C_n и S_n


      1. vadimr
        16.07.2025 15:46

        В разделе 1 написано:

        Оптимальная стратегия устроена просто: у Бориса есть список номеров, и если лампочка моргнула зеленым на одном из них — он останавливается, а в остальных случаях — продолжает игру. 

        без каких-либо доказательств этого утверждения.

        Почему, например, оптимальная стратегия не может зависеть от предыстории? Мне кажется, тут должны быть какие-то непростые рассуждения с условными вероятностями. Ведь, например, из прошлых наблюдений, если их достаточно много, Борис может делать какие-то выводы о распределении вероятностей у Ани.

        Предположим, А и Б договорились кидать кубик миллион раз. А выкинула кубик 300 тысяч раз, и ни разу он не упал шестёркой. Не зная априорно функции вероятности кубика, не будет ли логично Борису заключить, что он несимметричный, и при выпадении шестёрки на 300001 раз выбрать его, не дожидаясь 370000 бросков? Это просто пример. Я не вижу очевидных оснований отбрасывать такую стратегию без рассмотрения.


        1. d1-d5 Автор
          16.07.2025 15:46

          без каких-либо доказательств этого утверждения.

          Это следует из предыдущего абзаца

          Пусть Борис действует оптимально.  Как он принимает решение после зеленой вспышки? Предположим, что осталось n ходов до конца игры. Рассмотрим две вероятности:

          • S_n: за оставшиеся n ходов зеленых вспышек больше не будет

          • C_n: Борис выиграет, если продолжит игру и будет действовать оптимально

          Тогда, если 

          S_n > C_n — выгоднее сказать «стоп», если S_n < C_n — продолжать игру

          Вы согласны с тем, что написано в цитате? Если нет, я могу объяснить поподробнее

          Если согласны, то получается, что Борис принимает решение сравнивая числа S_n < C_n, которые зависят только от номера хода — и никак не зависят от прошлого

          И спасибо за содержательные вопросы. Очень хотелось написать компактно, но понятно что есть тонкие места. В целом этот раздел самый содержательный, остальное это вычисления


          1. d1-d5 Автор
            16.07.2025 15:46

             Борис может делать какие-то выводы о распределении вероятностей у Ани

            В условии задачи предполагается, что никаких данных о распределении нет. Аня пишет числа заново в начале каждой игры и перемешивает колоду. Мы говорим что стратегия наиболее успешна если для доля раскладов (тасовок колоды), на которых она выигрывает наиболее большая. То есть вы прогоняется через нее все наборы из 10! перестановок заранее неизвестных чисел и смотрите, на скольки из них она будет побеждать


            1. vadimr
              16.07.2025 15:46

              Априорно у Бориса никаких данных о распределении нет. Однако апостериорная оценка распределения по выборке, составляющей 36% генеральной совокупности, ведь уже вполне репрезентативна? В каком бы порядке ни была перемешана генеральная совокупность.

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

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


              1. d1-d5 Автор
                16.07.2025 15:46

                Но мы ничего не знаем о числах, которые написала Аня. Ну вот можно провести эксперимент. Я попросил чат гпт сгенерировать 10 чисел (правда) и перемешал

                Первые 4 из них 10^6, −\sqrt{5}, π, −0.618

                Что можно сказать про оставшиеся 6?


                1. vadimr
                  16.07.2025 15:46

                  На выборке из 4 чисел не разгуляешься до практически различимого эффекта.

                  Если б было, например, 400 подобных чисел, то имело бы смысл ждать в остальной части хотя бы 1200000, а 1000001 пропустить.


          1. vadimr
            16.07.2025 15:46

            С тем, что написано в цитате, я согласен.

            Однако Борис ведь не знает чисел Sn и Cn. Он может оперировать только какими-то своими оценками этих чисел Sn* и Cn*. И эти оценки теоретически могут зависеть от предыстории.


            1. d1-d5 Автор
              16.07.2025 15:46

              Понял в чем ваш вопрос. Нет, речь идет не об оценках, а о настоящих вероятностях. Например чтобы вычислить

              • S_n: за оставшиеся n ходов зеленых вспышек больше не будет

              можно смоделировать очень много игр и посмотреть на долю тех, в которых зеленых не будет. Ну или посчитать напрямую, это совсем не сложно. Посчитать C_n сложнее, но тоже можно — там под спойлером реккурентная формула

              Но нам не важно, откуда Борис знает эти вероятности и как он их нашел — утверждается только, что если он поступил не так, как велит это неравенство, то он ведет себя не оптимально. А мы же предположили, что он играет по оптимальной стратегии!

              В этом и трюк — мы пока не можем посчитать C_n, а значит не знаем, как именно устроена оптимальная стратегия. Но мы знаем, что действуя оптимально Борис должен ходить так как предсказывает неравенство (даже если он не умеет считать эти числа) — а из этого следует что есть момент остановки


              1. vadimr
                16.07.2025 15:46

                Я понял. Я был введён в заблуждение терминологией. То, что названо в статье стратегией Бориса, я бы не назвал стратегией, так как ей невозможно руководствоваться. Это просто теоретически оптимальная последовательность шагов, которые мог бы сделать Борис.

                Но для сути обсуждаемого вопроса, конечно, разницы нет.

                Спасибо!


                1. d1-d5 Автор
                  16.07.2025 15:46

                  Согласен! Я просто большую часть обозначений и терминологии придумываю на ходу, в оригинальном тексте все гораздо короче и без деталей, так что есть куда улучшать. Мне нравится как вы сформулировали, я бы добавил что-то такое


        1. d1-d5 Автор
          16.07.2025 15:46

          Предположим, А и Б договорились кидать кубик миллион раз. А выкинула кубик 300 тысяч раз, и ни разу он не упал шестёркой. Не зная априорно функции вероятности кубика, не будет ли логично Борису заключить, что он несимметричный, и при выпадении шестёрки на 300001 раз выбрать его, не дожидаясь 370000 бросков? Это просто пример. Я не вижу очевидных оснований отбрасывать такую стратегию без рассмотрения

          По правилам игры Борису заранее известны вероятности. Например, в задаче о шестерке предполагается, что кубик честный, и все вероятности равны 1/6. Для нечестного кубика рассуждение тоже работает, если мы заранее знаем вероятность выпадения шестерки (это то, что обозначается за G), просто стратегия будет другой

          Если вероятности неизвестны — это уже другая задача


  1. jetnet
    16.07.2025 15:46

    Почему-то вспомнил анекдот:

    Шерлок Холмс и доктор Ватсон летят на воздушном шаре. Попадают в густой туман и теряют ориентацию. Тут небольшой просвет – и они видят на земле человека.
    – Уважаемый не подскажете ли где мы находимся?
    – В корзине воздушного шара, сэр.
    Тут их относит дальше и они опять ничего не видят.
    – Это был математик, – говорит Холмс.
    – Но почему?
    – Ну во-первых, он очень долго думал над простым вопросом, во-вторых, он ответил АБСОЛЮТНО правильно, и в-третьих, его ответ АБСОЛЮТНО бесполезен.


  1. nickolas059
    16.07.2025 15:46

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


    1. durnoy
      16.07.2025 15:46

      Наверное, имеется в виду, что у оферов бывает срок действия.


  1. nikolandr
    16.07.2025 15:46

    Ключевой момент - у вас есть набор из N элементов, и в процессе их перебора вы применяете ту или иную тактику. В реальной жизни обычно такое бывает либо с возможностью сравнения всех вариантов и выбора наилучшего, либо наоборот бывает что ты заранее не знаешь весь пул. Упустишь первый вариант - второго может увы уже и не быть


    1. d1-d5 Автор
      16.07.2025 15:46

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