Слышал про одну задачку, которую давали на собеседование в Microsoft, хочу поделиться:
Есть небоскреб - 100 этажей. И есть только (!) два (абсолютно одинаковых) шарика.
Известно, что при выбрасывания шарика с некоторого этажа, шарик разбивается.
Требуется найти минимальное число операций, за которое можно определить номер этого этажа.
У меня получилось 13. Вообще, на работу брали людей, составивших алгоритм хотя бы из 20 операций.
Хотелось бы послушать еще мнения, может у кого-то меньше 13 получится?
Примечание:
Psych: что за задачка? интересно было бы подумать.))
Примечание:
sergio_vo: если сделать так, как предлагаете вы, то при условии, что если этот этаж = 100, то на это у вас уйдет 50 попыток..
Примечание:
katzyn: Да, у меня такой же способ.. Я не правильно просто просуммировал, 14 получается. Я просто начинал с низу подниматься с убывающим шагом (ошибочно я просто начинал с 13 этажа (в итоге до 91-го дошел бы)).. Первый бросок с 14 этажа - если разбивается, то понятно, 14 операций. Далее, бросаем с 27 (14+13) этажа - соответственно, тоже 14 операций максимум, далее, если не разбилось, то с 39 (14+13+12) этажа - тоже максимум 14 операций, и так далее.. бросаем с 50 (+11).. с 60 (+10).. с 69(+9) .. 77 (+8).. с 84 (+7).. с 90 (+6).. с 95 (+5).. с 99 (+4).. - итого каждый шаг уменьшается на единицу, а число операций остается постоянным - 14. Здесь в принципе здание могло бы быть высотой 105 этажей.
RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.
Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.
Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.