Если ответ больше-меньше 7 раз то можно угадать от 0 до 127. Только вот начинать надо с 63х
Ответ да-нет — один бит информации, всего вопросов семь т.е. семь бит итого может быть 2 в 7 степени вариантов т.е. 128. Включая вариант "0 партнеров" получается 0..127.
Далее "бинарный поиск" из заголовка — последовательно делим интервал поиска по полам.
Например, число 73
128/2 - 1 = 63 Вопрос №1. Меньше 63 — нет
63 + 64/2 = 95 Вопрос №2. Меньше 95 — да
63 + 32/2 = 79 Вопрос №3. Меньше 79 — да
63 + 16/2 = 71 Вопрос №4. Меньше 71 — нет
71 + 8/2 = 75 Вопрос №5. Меньше 75 — да
71 + 4/2 = 73 Вопрос №6. Меньше 73 — нет
73 + 2/2 = 74 Вопрос №7. Меньше 74 — да
Число меньше 74 и не меньше 73 — 73.
На самом деле — нет, когда начинаешь заниматься поиском до бинарного алгоритма быстро доходишь.
Например, бухгалтер знает что есть ошибка. Сделав отчет за период может понять есть она там или нет.
Делает за год, потом перебирает 12 месяцев, потом четверти/декады, потом дни.
Через некоторое время соображает. Надо искать не по месяцам, а по кварталам, а потом только к месяцам, потом месяц делит пополам.
Еще через некоторое время доходит до бинарного поиска делит год на полугодия…

IT-юмор
7.6K поста53.3K подписчика
Правила сообщества
Не публикуем посты:
1) с большим количеством мата
2) с просьбами о помощи
3) не относящиеся к IT-юмору