>> Я когда решал эту задачку, сначала придумал перетереть таблетки в порошок, смешать и разделить на две части. > > Не верное решение. > Мегамозг тогда точно здохнет.
Почему нет? Если равномерно смешать, то ничем не хуже чем каноническое решение.
>> Почему нет? > > Потому что смешав, в одной части окажется абсолютно случайная концентрация таблеток, а вовсе не 50 на 50. > >> Если равномерно размешать > > што? это как?
Это долго и тщательно. По закону больших чисел будет 50/50
> для тех, кто уже решил и не знает чем заняться, предлагаю задачу. > -------------------------------------------------------------------- > однажды купец решил закатить пир горой. созвал кучу гостей, закупил кучу еды и 1000 бочонков вина. > до празднования оставалась всего пара часов, когда купцу донесли, что злые недруги отравили вино в одной из бочек. > > купец не хотел отменять празднование и оставлять гостей без выпивки. > он знал, что признаки отравления проявляются уже через час после приема яда. > благодаря крепкой дружбе с тюремщиком, он смог договориться о "тестировании" вина на 10 смертниках. > > как купец смог узнать, в какой из бочек был яд?
>> Это долго и тщательно. По закону больших чисел будет 50/50 > > Ага, а еще параллельные прямые пересекаются :) > Бред это. > Шанс получить нужную комбинацию - 1 к миллиону
Аптекари сотни лет смешивают. Если тщательно смешивать, то как раз получить неравномерность, шанс мизерный. Для наглядности возьми цветные мелки, растолки и перемешай. А потом поробуй там найти сгустки.
>> Растворить, потом выпарить!!! > > уже лучше ;)
А не боишься, что когда осадок будут делить, получиться неравномерность? :) Что в воде перемешивать, что так мелкодисперсный порошок - разница непринципиальная.
>> У меня получилось, что 4 смертника здохло, 6 выжило :) > > При удачном раскладе умирает один урка, при неудачном два. Только не доверяй это дело долбоёбам! (с)
Думается, что одним там никак не отделаешься. А чтобы с точность до бочки, я четверых отравил.
>>>> У меня получилось, что 4 смертника здохло, 6 выжило :) >>> >>> При удачном раскладе умирает один урка, при неудачном два. Только не доверяй это дело долбоёбам! (с) >> >> Думается, что одним там никак не отделаешься. А чтобы с точность до бочки, я четверых отравил. > > Это вы как так? У меня при самом удачном - 0, при самом неудачном - все 10 умирают (кол-во бочек до 1024 округляю) > Или я туплю и есть другой вариант решения? Со временем какая-то заморока?
>> Подсказываю :). Это типа пересечение множеств. > > Да я так и решаю, получается ответ с точностью до бочки, но просто непонятно, как у вас в самом худшем случае максимум 4 человека мрут ) У меня в худшем - все 10
Про 1024 забудьте. И не жалейте урок. Отравите сразу двух :) чтобы время сэкономить
> > Тем, кто про 1024 думал - не годится метод, эдак log(2,1024)=10 часов потребуется. Времени только 2 часа по условию. > Так что условие про действие яда "через час" можно использовать.
Где-то выше было, что "через час" это максимум.Т.е может и через полчаса скопытиться.
Вечер вроде наступил :) Попробую ответить. Или мозг "замылился" или это решение.
Разбиваем бочки на сотни и присваиваем их каждому зэку
Разбиваем каждую сотню на десятки.
Первый зэк пробует свою сотню и все первые десятки из сотен других зэков
Второй зэк пробует свою сотню и все вторые десятки из сотен других зэков
Третий зэк и т.д
Тут варианты Первый вариант
Если умирает только один (допустим первый) ясно, что яд в первой сотне в первой десятке (ведь все остальные десятки попробовали другие зэки). И у нас остается еще 9 зэков. Если каждый попробует по одной бочке, а одну отставят в сторонку то или один умрет ( кэп говорит, что яд в бочке из которой он пил) или все выживут и значит яд в отстасленной в сторону Второй вариант
Умирают двое. Допустим первый и второй. А значит яд или первом десятке второй сотни или во втором десятке первой. Под подозрением 20 бочек, а у нас 8 зэков.
Проверяем тем же способом Из каждой бочки пьют уникальными парами.
Первый столбец бочки. второй пары зэков.
1 1/2
2 2/3
3 3/4
4 5/6
5 7/8
6 1/3
7 2/4
8 3/5
9 4/6
10 5/7
11 6/8
12 1/4
13 2/5
14 3/6
15 4/7
16 5/8
Если остановиться на этом то под подозрением еще 4 бочки.
Поэтому не остнавливаясь быстренько создадим уникальные тройки.
17 1/2/3
18 3/4/5
19 6/7/8
20 1/4/8
А потом смотрим . Если умерло двое - то смотри какая пбочку пила эта пара.
Если умерли трое - смотри какую бочку они вместе пили.
Вроде так :) Возможно ошибся, но не могу найти ошибку
> Бочки с вином напомнили одну добротную задачку: > Есть 100-этажка. При броске с кирпича с определённого этажа кирпич ломается (и со всех более высоких этажей - тоже сломается, а с более низких - нет). У нас есть 2 одинаковых кирпича. Требуется как можно быстрее (за наименьшее число бросков) выяснить этот самый номер этажа, с которого кирпичи начинают ломаться. > За сколько бросков вы справились бы?
Так кирпича только два. Значит и броска только два? Если больше, то традиционнвм спообом угадывания "больше-меньше"
>> Так кирпича только два. Значит и броска только два? Если больше, то традиционнвм спообом угадывания "больше-меньше" > > ну почему? > бросил с 1го - не разбился, со 2го - не разбился, с 3го... на 63 - разбился. > ответ готов =)
> прошли уже сутки, поэтому даю ответ на задачу про 1000 бочек > > эту задачу хорошо решать, будучи программистом, потому как решается она при помощи двоичной системы счисления. > любое число до 1024 можно представить в двоичном виде при помощи всего 10 разрядов. > > например 1000 = "1111101000", 666 = "1010011010", 77 = "0001001101" > (для тех, кто не понял как я это сделал - при помощи стандартного калькулятора винды, "вид - инженерный") > > нумеруем все бочки таким образом. > а каждый смертник будет отвечать за свой разряд. > > потом поим из бочек по принципу - стоит 1 в твоем разряде - пьешь, стоит 0 - пропускаешь. > > после часа некоторая часть - умрет. зная их разряды, ставим в соответствующие места 1, а в остальные - 0. > после чего переводим в 10 систему и имееем отравленную бочку. > ------------------------------- > в среднем каждый перепробует 500 бочек, > а из каждой бочки - не более 9
Прикольно. Каждую бочку пьет уникальная комбинация зэков. Вот я тупень... Про двоичные числа даже не подумал, хотя казалось бы..
Э! А ты хитрый! Тогда надо было в условиях задачи указать что не два часа, а час!
>> Про двоичные числа даже не подумал, хотя казалось бы > > а в комментах предлагали округлить до 1024!!!
Хм.. Т.е подумал, но неправильно подумал и вернулся к тысяче. Сейчас вспоминается, что давно подобную задачку решал и подобным способом. Остается утешаться, что эту задачу решил другим способом.
Пойду стукнусь головой.
правозащитник »