PDA

Просмотр полной версии : Задача #12



sirUjin
09.09.2008, 14:25
Не очень сложная задача...

Виночерпий фараона был в панике! Через полтора часа с инспекцией в фараоновы винные погреба должен прийти Главный Распорядитель дворца, а 5 минут назад виночерпий получил записку из канцелярии охраны престола, в которой говорилось что одна из 1000 бочек с вином в погребе отравлена. Яд известен, это смесь крови оранжевого морского ежа и скорпиона, действует не сразу, а только через час. Но какая конкретно бочка отравлена неизвестно. Не дай бог, Главный Распорядитель отопьет из отравленной бочки - самого виночерпия бросят в яму со змеями, а всех его родственников продадут в рабство!
У виночерпия есть, конечно 10 рабов, на которых можно поэкспериментировать, но рабов всего 10, а бочек 1000. Да и если первых симптомов ждать целый час, а Главный Распорядитель приходит через полтора, будет всего одна попытка распознать яд.
Впрочем, а что, если....

Что придумал хитроумный виночерпий, чтобы точно определить бочку с ядом?

sirUjin
09.09.2008, 18:36
Tolesnikov решил задачу.

Маленькое пояснение: яд не действует на всех одинакого быстро. Кто-то умрет быстрее, кто-то медленнее. Поэтому варианты с засечением времени отпадают.

sirUjin
09.09.2008, 20:39
Ты прав, только зачем было воткрытую выкладывать, мог бы и в личку послать. А то теперь остальным будет неинтересно.

Zigmar
09.09.2008, 23:13
ну вот, так красиво расписал... :(

ILS
09.09.2008, 23:18
Zigmar, извини, ради бога, но и правда - решения у нас в личку принято писать :)

sirUjin
10.09.2008, 15:10
Гмык Решил задачу

Fessaer
10.09.2008, 17:06
sirUjin, забавно. :crazy girl:

sirUjin
10.09.2008, 18:38
Ты не "забавно", ты ответ давай!

Fessaer
11.09.2008, 00:48
sirUjin,


Решил, решил. Дай другому:crazy girl: Ыдмыныстрацыя

Шурик
11.09.2008, 01:00
решение я знаю, но мне лень высчитывать.

Zigmar
11.09.2008, 01:59
Шурик, решение, если его правильно сформулировать - достаточно красивое. "Высчитывать" ничего не надо.

Шурик
11.09.2008, 02:29
без цифр я знаю решение. очень всё просто.

ILS
11.09.2008, 10:37
Шурик, напиши в личку Зигмару, Юджину или мне, мы скажем, пральна иль нет :)

sirUjin
11.09.2008, 11:49
Нетушки, нетушки! Тут только я решаю, правильно, или нет! :D

ILS
11.09.2008, 22:03
Шурик, тогда пиши СирУжыну :evillaugh

Шурик
12.09.2008, 01:11
жду ответа.

sirUjin
14.09.2008, 11:10
А вот и не правильно! http://s3.rimg.info/6249c95f600dc6352b09be242cad8823.gif

wolf-hound
14.09.2008, 11:19
sirUjin, задача звучит интереснее когда ты спрашиваешь какое минимальное количество рабов надо, а не сразу говоришь 10.

sirUjin
14.09.2008, 12:33
Может быть...

Stassy
16.09.2008, 15:49
Видимо так..
Каждый пьет 100 бокалов. Задача виночерпия запомнить сотню каждого.
А по приходу кого-то там, уговорить его выпить из других 400 сотен.

Мечтатель Вова
16.09.2008, 16:15
неее, тут нет таких "подвохов".
можно вычислить точную бочку. сугубо математика/логика.


кстати, задал её на другом форуме не говоря про нужное количество.
никто так пока и не решил. лучший результат 31 раб.

Delirium Tremens
28.09.2008, 12:28
Вычислив с точьность юо 9-и бочек по человеческой (!!!) системе... Я долго долго материлась узнав ответ.
И все еще, в бобруйск вас и вашу систему... Это нечесные приемы, для людей с определенными знаниями, я хоть все это когда-то и учила, не додумалась бы в жизни:(

wolf-hound
28.09.2008, 13:13
Гмык, а почему 31, для куба 10х10х10 надо 30?

sirUjin
28.09.2008, 13:56
Кстати, печатать правильный ответ для всех нерешивших?

Мечтатель Вова
28.09.2008, 20:27
Masha, ну я решил без всяких знаний, так что норм )

wolf-hound,
не, до куба тот человек так и не додумался.
там был квадрат и рабы пили по три линии каждый, причем среднюю линию только он, а правую и левую делили с соседом с права и с лева.
или это уже его другая версия.. давно было.

Stassy
28.09.2008, 22:35
sirUjin, печатать.
или, мне в личку скинуть, плз.

Шурик
29.09.2008, 01:04
печатай тогда уже для всех!

sirUjin
02.10.2008, 12:03
Я опишу решение языком понятным людям связаным с програмированием, хотя и далекие от компьютеров люди решили эту задачу.

Решение простое. Все наверно догадались, что нужно давать каждому рабу пить из разных бочек, и так, чтобы из каждой бочки выпило несколько рабов. Тогда по сочетанию умерших рабов можно точно определить в какой бочке яд. Другими словами, нужно чтобы из каждой бочки выпило уникальное сочетание рабов. И совсем другими словами, надо индексировать 1000 бочек 10-ю рабами.

Раб - это бинарная система - он может или умереть, или выжить. То есть каждого раба можно представить себе как бит информации - нолик или единичка. Как только мы поняли это, все становится ясно - 10 рабов - 10 битов, можно индексировать до 1024 бочек по стандартной бинарной системе.
Как это делается: нумеруем каждую бочку в бинарной системе:
1-я бочка - 0000000001
2-я бочка - 0000000010
3-я бочка - 0000000011
...
1000-я бочка - 1111101000
Смотрим на номер бочки - если в 1-м регистре естоит единичка - даем пить первому рабу. Если нет - не даем. То же с остальными.
Получается, что если умер только первый раб - отравлена первая бочка, только 2-й - вторя, первый и второй - третяя, и т.д.

P.S. Нумерацию, в принципе, можно начитанть с нуля. То есть из первой бочки вообще никому не давать пить, и если ни один раб не умер, значит отравлена именно первая бочка.

Мечтатель Вова
02.10.2008, 14:09
и простым языком:
http://ne-forum.ru/pic/stam/wherethepoison.jpg