Головоломки

RM
На сайте с 28.02.2007
Offline
3
#171
мне кажется кто-то уже предлагал самый грамотный вариант, который заключается в идее бросать первый кокос через каждые три этажа: 3, 6, 9, 12 ...
Например, с 9 кинул - разбился кокос, спустился на 7 этаж и второй кинул - если разбился все понятно, если не разбился значит 8 этаж.
Я ответа не знаю, но этот ответ мне кажется самым логичным.

Тут получится максимум 34 попытки, а это очень много.

Пусть мартышка кидает кокос каждый раз на x этажей выше.
Общее число ее попыток y.

y = ЦЕЛОЕ(100/x)+(x-1) -> min
Перебором легко находится диапазон x=[8;13].
И ответ y=19.

На примере это означает, что если мартышка кидает кокос с каждого 10-го этажа (x=10), в худшем для нее случае первый кокос разобъется с 10-й попытки при броске с 100-го этажа. Второй кокос придется кидать с 91 по 99 этаж. В худшем случае он либо не разобъется (мин. этаж 100-ый), либо разобъется при броске с 99 этажа (мин. этаж 99-ый). А это было еще 9 бросков. Итого: 19 бросков.

Рассуждение почти верное, но неверно в одном месте: "почему мартышка кидает кокос каждый раз на x этажей выше"? Если это х будет варьироваться, то количество попыток можно уменьшить.

Priorat
На сайте с 01.06.2006
Offline
92
#172

Сначала с 50-го, если разбился, то с 25, если нет, то с 75. Далее рассмотрим первый вариант, второй по аналогии. Кидаем с 25, потом с 38, потом 44, потом 47, потом 48, 49. За 7 бросков реально определить. Собственно считается при любом кол-ве этажей как логорифм с основанием два округленный до ближайшего большего целого числа.

MO
На сайте с 19.05.2006
Offline
140
#173
Priorat:
Сначала с 50-го, если разбился, то с 25, если нет, то с 75. Далее рассмотрим первый вариант, второй по аналогии. Кидаем с 25, потом с 38, потом 44, потом 47, потом 48, 49. За 7 бросков реально определить. Собственно считается при любом кол-ве этажей как логорифм с основанием два округленный до ближайшего большего целого числа.

+1, хотел тоже самое написать, но чуть другими словами :)

Чем больше изучаешь SEO, тем неприятнее ощущать себя трафом =)
Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#174
Priorat:
Сначала с 50-го, если разбился, то с 25, если нет, то с 75. Далее рассмотрим первый вариант, второй по аналогии. Кидаем с 25, потом с 38, потом 44, потом 47, потом 48, 49. За 7 бросков реально определить. Собственно считается при любом кол-ве этажей как логорифм с основанием два округленный до ближайшего большего целого числа.
MineOptim:
+1, хотел тоже самое написать, но чуть другими словами

Всем привет.

А теперь внимательно читаем условие задачи (надеюсь, в этом случае то оно корректно). А условие - два целый ореха. В вашем решении: если реальный этаж 20, то после второй попытки у нас не останется кокосов.

Неужели мой алгоритм (через 3 этажа) не верен?

Хотя...

Cage:
y = ЦЕЛОЕ(100/x)+(x-1) -> min
Перебором легко находится диапазон x=[8;13].
И ответ y=19.

Самый грамотный ответ. А если не бросать с 100 этажа (лишнее действие), то получается 18 попыток.

дописал через час:

Ну, вот.. смутил меня -

R-Matazz:
Тут получится максимум 34 попытки, а это очень много.

Я уж сам свой ответ забыл. Если бросать через каждые 6 этажей получается 19 попыток.

MO
На сайте с 19.05.2006
Offline
140
#175
Ёхан Палыч:
Всем привет.
А теперь внимательно читаем условие задачи (надеюсь, в этом случае то оно корректно). А условие - два целый ореха. В вашем решении: если реальный этаж 20, то после второй попытки у нас не останется кокосов.
Неужели мой алгоритм (через 3 этажа) не верен?

Это как про "загадай число от 1 до 100, а я его быстро смогу угадать, если ты будешь говорить больше/меньше, когда я делаю попытки с угадыванием", тут тоже самое.

Вот ходы при самом плохом исходе: 50, 25, 13, 7, 4, 2, 1 итого: 3 подхода по 2 кокоса и 1 раз 1 кокос (4 попытки)

П.С. тема зачетная, выиграл сегодня 50 у.е. на задачке про кофе и молоко 😂

C
На сайте с 17.08.2002
Offline
82
#176
Ёхан Палыч:
Я уж сам свой ответ забыл. Если бросать через каждые 6 этажей получается 19 попыток.

Допустим, кокос разобьется при броске с 96 этажа и не разобьется при броске с 95.

6, 12, 18, ..., 90, 96 - с 16-ой попытки разбился первый кокос.

91, 92, 93, 94, 95 - второй кокос не разбился, но попытка 21-я :)

Можно найти это число проще

ЦЕЛОЕ(100/6)+(6-1) = 21

R-Matazz:
Рассуждение почти верное, но неверно в одном месте: "почему мартышка кидает кокос каждый раз на x этажей выше"? Если это х будет варьироваться, то количество попыток можно уменьшить.

Когда я давал свой ответ, подозрение такое было :).

-----

Чтобы уложиться в y попыток, нужно начинать бросать с этажа y (на тот случай, если кокос разобьется и придется бросать с 1-го по (y-1)-й этаж).

После первого броска у нас осталось (y-1) допустимых попыток, поэтому если первый кокос не разбился, его можно бросать с этажа (y+y-1). И т.д.

y - общее кол-во бросков

y+(y-1)+(y-2)+(y-3)... >= 100

y -> min

Перебором легко находятся нужные этажи

14, 27, 39, 50, 60, 69, 77, 84, 90, 95, 99

Можно уложиться в 14 бросков.

Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#177
Cage:
6, 12, 18, ..., 90, 96 - с 16-ой попытки разбился первый кокос.
91, 92, 93, 94, 95 - второй кокос не разбился, но попытка 21-я

Не так. У нас разные алгоритмы проверки последнего диапазона. Надо так - 6, 12, 18, ..., 90, 96 -> 93 -> 94,95 или 91,92. Итого 19.

Это симбиоз двух тактик.

C
На сайте с 17.08.2002
Offline
82
#178
Ёхан Палыч:
Не так. У нас разные алгоритмы проверки последнего диапазона. Надо так - 6, 12, 18, ..., 90, 96 -> 93 -> 94,95 или 91,92. Итого 19.
Это симбиоз двух тактик.

Ну тогда пусть кокос разобьется при броске с 93-го этажа.

6, ..., 96 - 16-ть попыток

93 - 17-я попытка

и кокосы закончились :)

Бросать с 91, 92 нечего.

Ёхан Палыч
На сайте с 07.05.2006
Offline
169
#179
Cage:
Бросать с 91, 92 нечего.

Черт! Што телать?

MO
На сайте с 19.05.2006
Offline
140
#180
Cage:
Можно уложиться в 14 бросков.

Ну так это больше чем в методе, который первым озвучил Приорат

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий