Подобные вопросы для интервью предназначены для того, чтобы понять, как вы думаете. Поэтому я бы, вероятно, упомянул решение O (N ^ 0.5), как указано выше, но я бы также дал следующее обсуждение ...
Поскольку у кокосов со временем могут появиться внутренние трещины, результаты могут быть не столь совместимы с решением O (N ^ 0,5). Хотя решение O (N ^ 0,5) является эффективным, оно не совсем надежно.
Я бы порекомендовал линейный раствор O (N) с первым кокосом, а затем проверил результат со вторым кокосом. Где N - количество этажей в здании. Итак, для первого кокоса вы попробуете 1-й этаж, затем 2-й, затем 3-й, ...
Если предположить, что оба кокоса имеют одинаковую конструкцию и расположены под одинаковым углом, то вы можете бросить второй кокос прямо на пол, который сломал первый. Назовите этот кокосовый ломающий пол B.
Для кокоса № 2 вам не нужно тестировать на 1..B-1, потому что вы уже знаете, что первый кокос не сломался на полу B-1, B-2, ... 1. Так вам нужно только попробовать это на B.
Если 2-й кокосовый орех разбивается о B, то вы знаете, что B - это слово, о котором идет речь. Если он не сломается, вы можете сделать вывод, что с течением времени произошли внутренние трещины и разрушение кокосового ореха и что тест с самого начала имеет недостатки. Вам нужно больше кокосов.
Учитывая, что размеры зданий довольно ограничены, дополнительная уверенность в вашем решении стоит решения O (N).
Как упоминал @ Rafał Dowgird, решение также зависит от того, является ли рассматриваемая обезьяна африканской или европейской обезьяной. Общеизвестно, что африканские обезьяны бросают с гораздо большей силой. Следовательно, точность разбивающего пола B становится точной только с отклонением +/- 2 этажа.
Чтобы обезьяна не устала от всех этих ступеней, было бы также желательно прикрепить веревку к первому кокосу. Таким образом, вам не нужно делать 1 + 2 + .. + B = B * (B + 1) / 2 лестничных марша для первого кокоса. Вам нужно будет только выполнить ровно B лестничных маршей.
Может показаться, что количество лестничных пролетов не имеет отношения к этой проблеме, но если обезьяна устает в первую очередь, мы можем никогда не прийти к решению. Это дает новые соображения для проблемы остановки .
Мы также предполагаем, что здание находится на земле и сила тяжести установлена на уровне 9,8 м / с ^ 2. Мы также будем предполагать, что гравитационных волн не существует.