Текущий архив: 2003.01.20;
Скачать: CL | DM;
Вниз
Задача для разминки мозгов - практичный вариант Найти похожие ветки
← →
Сатир © (2002-12-28 13:33) [0]Есть компания из N человек. Есть одна бутылка известной жидкости и пустой стакан. Спрашивается, как разделить содержимое бутылки между участниками компании так, чтоб каждый был уверен, что он выпил не меньше 1/N содержимого бутылки. Переливать назад из стакана в бутылку не запрещено.
← →
han_malign © (2002-12-28 14:26) [1]Пипеткой...
З.Ы. А все равно не получится - в любой бутылке остается еще 40 капель... :))
З.З.Ы. Свести N к одному - но это уже алкоголизм...
← →
Ketmar © (2002-12-28 14:43) [2]отобрать стакан и бутылку, мотивируя необходимостью проверки жидкости на качественность. когда напроверяешься до упора, то
а) если осталась жидкость: отдаешь следующему дегустатору
б) если нет больше жидкости: говоришь, что была "паленая".
ну и что, что задача не решена? зато удовольствие получили %-)
Satanas Nobiscum! 28-Dec-XXXVII A.S.
← →
Сатир © (2002-12-28 14:57) [3]2han_malign © (28.12.02 14:26)
пипетки в наличии не имеется
2Ketmar © (28.12.02 14:43)
>ну и что, что задача не решена? зато удовольствие получили %-)
не спеши...
← →
Игорь Досужев © (2002-12-28 15:16) [4]Есть древний способ, как поровну разделить кучку алмазов/золота/жемчуга на две равные части: один человек делит на 2 мешочка, а второй забирает тот мешочек, который ему больше нравится. Ясно, что второй постарается взять тот мешочек, где драгоценностей больше, поэтому первый вынужден делить поровну.
Думаю, можно придумать модификацию для N участников. Например, по очереди наливают, а жребием определяют, кто это выпьет.
← →
Странник © (2002-12-28 15:27) [5]капельмейстер нужен
← →
Сатир © (2002-12-28 15:39) [6]2Странник © (28.12.02 15:27)
ждём-с...
← →
France (2002-12-28 15:46) [7]Если объем бутыля 0,5л, а выпивающих трое...
То делите сами... :)
← →
Сатир © (2002-12-28 16:08) [8]2France (28.12.02 15:46)
а если иначе?
← →
Сатир © (2002-12-28 16:11) [9]2France (28.12.02 15:46)
так даже при таких условиях, если ты считаешь, что это легко, предложи свой вариант.
Я, например, решения не знаю, поэтому и повесил эту задачку здесь.
Да к наступающим праздникам думаю, она будет очень кстати
← →
France (2002-12-28 16:45) [10]Знаю точно, как налить половину стакана. Надо его наклонить и лить до тех пор, пока жидкость не коснется одновременно края стакана и пересечения стенки и дна. Это ровно половина.
← →
McSimm © (2002-12-28 16:47) [11]France (28.12.02 16:45)
Неверно. Стакан к верху расширяется - будет меньше половины.
← →
Сатир © (2002-12-28 17:28) [12]2France (28.12.02 16:45)
плюс к этому нужно учесть, что восприятие положенной 1/N-той части у каждого участника компании разное. Естественно, варианты, когда ты считаешь, что твоя 1/20-я часть бутылки есть её половина, отметается с самого старта.
Вообщем, поделить нужно поровну и честно.
А кто и как это будет делать, вопрос времени и ваших потенциальных способностей.
← →
Сатир © (2002-12-28 19:47) [13]народ, а ведь компания не ждёт!
ведь щаз до драки дойдёт, если не поделите...
← →
Сатир © (2002-12-28 19:59) [14]Ура! У меня кажется есть решение!!!
Так, даю самым умным ещё один день и завтра расскажу свою идею
← →
Sha © (2002-12-28 20:01) [15]Первый наливает, по его мнению, 1/N жидкости в стакан и говорит, что готов ее выпить. Если кто-то считает, что там больше, он имеет право отлить лишнее в бутылку при условии, что затем выпьет остаток. Далее, думаю, ясно.
← →
Сатир © (2002-12-28 20:12) [16]2Sha © (28.12.02 20:01)
много неточностей, да и мой вариант оказался неверным. Только что перезвонил коллеге, грит - халява.
А идея была следующая:
Наливаем целый стакан и даем первому участнику с просьбой отпить положенное. Участник тут же смотрит на бутылку, забывая, что она уже не полная, и отмечает про себя, соответсвенно, меньшую часть. Остаток назад выливаем в батл. Но такой вариант не пройдёт со слабонервными и теми, что закодировались. Ведь каждый в таком случае может надпить больше, чем положено, чем вызовёт всеобщий ропот, гнев и негодование, с последующим рукоприкладством. А это не есть карош, да и не честно совсем...
Значить, тогда решаем дальше, каспада карошие
← →
Sha © (2002-12-28 20:15) [17]2 Сатир © (28.12.02 20:12)
> много неточностей
Это о чем?
← →
Сатир © (2002-12-28 20:23) [18]2Sha © (28.12.02 20:01)
Если кто-то считает, что там больше, он имеет право отлить лишнее в бутылку при условии, что затем выпьет остаток
следовательно, сколько бы вы не отлили себе в стакан, все будут бояться возражать под страхом отпить меньше. Тогда контр-вопрос: дойдет ли до последнего участника компании очередь допить остатки?
← →
Sha © (2002-12-28 20:27) [19]Уже начал праздновать? Тогда, для начала, выполним тестирование состояния основных систем организма.
Тест 1.
1,2,3,4...
Требуется продолжить ряд.
Если продолжить удалось, значит можно продолжать :)
Тест 2.
Требуется продолжить решение Sha © (28.12.02 20:01).
Если удалось, тестирование успешно пройдено :)
Ответ на Тест 2. (Не подглядывать)
Имелось ввиду "остаток в стакане".
← →
Сатир © (2002-12-28 20:39) [20]2Sha © (28.12.02 20:27)
>тестирование состояния основных систем организма.
мля, ну мы же не яд делим!
Ладно, для непьющих считать, что в батле элексир молодости, а вокруг собралась шобла в тыщу душ.
Скажи-ка тогда, начальник, как всех напоить-то в сласть?
← →
Sha © (2002-12-28 20:43) [21]2Сатир © (28.12.02 20:39)
> Скажи-ка тогда, начальник, как всех напоить-то в сласть?
Это обычный аукцион на понижение. Первый наливает себе и говорит: "Я готов это выпить". Затем каждый участник имеет право сказать: "Я считаю, что 1/N меньше, и готов выпить меньше". Так продолжается до тех пор, пока последнему сказавшему это все остальные не говорят "Да черт с тобой - пей". Он выпивает и становится зрителем аукциона между N-1 участниками.
← →
Сатир © (2002-12-28 20:50) [22]2Sha © (28.12.02 20:43)
>участник имеет право сказать: "Я считаю, что 1/N меньше, и готов выпить меньше".
имеет право, но сдаётся мне - не скажет:(
ладно, ты свой выриант отшлифуй до блеска, а я завтра с коммисией переговорю. Но коммисия просила дать красивое решение, а не чёртичто... аукционы какие-то...
... и где вы эти слова берёте...
Да, и альтернативных вариантов неплохо бы поиметь для сравнения, вот как в предыдущей задаче, например, одно такое шешение, другое - совсем другое, и может быть, и лучше...
← →
Sha © (2002-12-28 20:53) [23]Хорошо бы иметь еще альтернативу для значения 2х2 :))))))))
← →
Сатир © (2002-12-28 21:01) [24]Sha © (28.12.02 20:56)
дык, это ж две большие разницы
← →
Sha © (2002-12-28 21:06) [25]Математика - она и на дне бутылки математика. (с) мой.
← →
Сатир © (2002-12-28 21:15) [26]2Sha © (28.12.02 21:06)
расскажешь это дяде Васе
"Если народ хочет выпить, их никакая математика не остановит" (с) Ломоносов
← →
Clickmaker © (2002-12-28 21:21) [27]На самом деле, тот кто живет регулярной алкогольной жизнью (как я, например) тот может легко разлить поровну. Без всякой математики.
← →
ну это я, как кто? (2002-12-28 21:54) [28]2Clickmaker © (28.12.02 21:21)
это называется "человеческий фактор". исключить.
← →
Lola © (2002-12-29 02:36) [29]В молодые годы помнится делили "бульками", делилось достаточно точно. Только уже не помню, сколько булек в бутылке... :)
← →
Сатир © (2002-12-29 13:50) [30]Ну всё - решение готово.
Коммисия рассмотрела все варианты и постановила объявить г-на Ша наиболее близко подобравшимся к верному решению. Но. Но есть одно "но". Нужно чётко оговорить процедуру дележа, чтоб бы в случае, если последнему останется самая большая часть, никому не было обидно.
Да, и ещё. (Ну это уже скорее на моей совести.) Нужно поделить не поровну, а честно. А это две большые разницы.
Так что даю ещё один день на существенное уточнение к предложенному г-ном Ша решению, и будем с этим делом проверять на практике. А как же ещё проверить точность решения и справедливость теории? Совершенно верно. Нужно провести лабораторную работу. К тому же наступающие праздники только будут способствовать благоприятному стечению обстоятельств и положительных результатов.
С Наступающим.
Ждём ваших предложений, уважаемые.
← →
France (2002-12-29 14:03) [31]Предлагаю такое решение. :)
Берете и чем нибудь царапаете отметки на этикетке бутылки.
Каждый выпивает свою долю. Не очень точно, зато честно.
← →
Сатир © (2002-12-29 15:09) [32]2France (29.12.02 14:03)
этикетка отсутствует. Портить поверхность бутылки воспрещено под страхом её разбить.
← →
Sha © (2002-12-29 21:08) [33]2 Сатир © (29.12.02 13:50)
> Нужно чётко оговорить процедуру дележа, чтоб бы в случае, если
> последнему останется самая большая часть, никому не было обидно
Никому и не должно быть обидно - каждый считает, что в отношении него справедливость не нарушена, что он выпил 1/N часть жидкости или больше. По его мнению оставшимся N-1 собутыльникам досталась (N-1)/N часть или меньше, что тоже справедливо :). Как они ее поделят ему не важно, он свое получил: "Мы люди не завистливые, сколько выпил другой - не наше дело". Есть сомнения - смотри условия: "Спрашивается, как разделить содержимое бутылки между участниками компании так, чтоб каждый был уверен, что он выпил не меньше 1/N содержимого бутылки". И ни слова про "обиды" - не гимназистки.
> даю ещё один день на существенное уточнение к предложенному г-ном Ша решению
Сатир © (31.12.02 23:59 :) "А щас будем существенно уточнять, скока будет 2х2..."
← →
SI-riuss © (2002-12-29 23:20) [34]С Ша не согласен.
Хотел бы я быть в этой компании первым, кто будет отмерять свои 1/N. Налью себе свои 2/3 бутылки, и пусть кто пикнет, что замного, придется ему вообще не пить, а то и вовсе бежать в магазин за недостающими -х ml жидкости.
← →
Rouse_ © (2002-12-30 00:21) [35]Есть старинный Русский способ.
Берем 3 стакана, и в каждый отливаем ровно по 7 (семь) булек :)
Варианты с более многочисленными участниками рассчитываются с привлечением техже 7 булек и счетов :))
Вот немного другого рода задача.
Есть функция типа MyFunc(Value: Integer): Integer;
В нее передаются значения.
Значения могут быть или 496 или 678.
Если передано первое значение, то должно вернуться второе и наоборот, в случае переданного второго значения результатом должно вернуться первое.
Задача, для первого класса :)
Нужно написать самый оптимальный алгоритм данной функции.
Желаю успехов
← →
SI-riuss © (2002-12-30 00:48) [36]
if MyFunc=496 then MyFunc:=678 else MyFunc:=496;
А в чем прикол???
← →
Rouse_ © (2002-12-30 01:09) [37]Result := 1174 - Value;
:))
← →
Rouse_ © (2002-12-30 01:11) [38]Логика, Господа, Логика!!! Иначе не быть нам мастерами
Желаю успехов
← →
SI-riuss © (2002-12-30 01:21) [39]Ничего не понял...
Почему
> Result := 1174 - Value;
?
Ведь по условию никаких матаматических вычислений не задавалось, почему получилась сумма?
Или объясни, или все это фигня какая-то
← →
Rouse_ © (2002-12-30 01:43) [40]По условию задавалось, цитирую: Нужно написать самый оптимальный алгоритм данной функции
Важен алгоритм, т.е. логика построения приложения. А результат и у Вас и у меня одинаковый. Но каковы затраты! (проверьте асм код и удивитесь :)
Желаю успехов
← →
SI-riuss © (2002-12-30 01:52) [41]Опять не понял...
Иными словамиMyFunc:=1174-MyFunc
?
А что, довольно интересный вариант.
← →
Sha © (2002-12-30 08:11) [42]2SI-riuss © (29.12.02 23:20)
> Хотел бы я быть в этой компании первым, кто будет отмерять свои 1/N.
А я хотел бы. Риска никакого. Смело наливаю полный стакан. Говорю, что это 1/10 и могу ее выпить. Кому не нравится, пусть отливает. Ну, и т.д.
Включаю радио, слышу (31.12.03 23:59 :)
"В уходящем году существенному уточнению был подвергнут целый ряд основополагающих математических принципов и теорий. Наши научные герои решили на этом не останавливаться. В беседе с нашим корреспондентом один из группы N энтузиастов, Сатир ©, поведал, что в их ближайших планах перенести разработанные методы буквально на все области современной науки. Мы желаем творческих успехов ..."
Понимаю, не тем путем шли эти годы... Надо было развивать буквально все области современной науки... :)))))))
← →
ZZ_ (2002-12-30 09:08) [43]Насчет разделить бутылку :
Берется значит стакан и бутылка.
while в бутылке что-нибудь есть
Из бутылки в стакан переливается содержимое до тех пор, пока кто-нибудь из собутыльников не скажет "стоп". Кто успел первым сказать, тот и выпивает содержимое стакана.
А кто будет жадничать не получит ничего ;)
← →
Сатир © (2002-12-30 13:39) [44]2Sha © (30.12.02 08:11)
эх, где Вы были, когда я стоял у истоков создания компании "шКодер & К"...
Ладно, я через пару часов уезжаю праздновать НГ, так что меня не будет в Сети до 8-го числа. Поэтому объявляю правильный вариант ответа:
Первый человек наливает себе положенную часть жидкости. Дальше этот стакан идёт по кругу. И каждый оценяет точность первого. Любой из оценщиков может отлить в бутылку лишнее и сказать:"Я готов выпить". Но если за ним ещё будут стоять люди, которые не участвовали в оценке точности, то стакан дальше пойдёт по рукам. На самом деле, всё равно каким по очереди пить, потому что все должны выпить одинаковую часть. Но никто не сделает даже и маленького глотка, пока все участники не дадут своего согласия. После того, как он выпил, он выбывает из игры и не может принимать участие в дальнейшем судействе. Если же получится так, что самому последнему достанется больше , чем положенно, то винить в этом будет некого, поскольку все принимали участие в дележе.
2Sha ©
Вам, уважаемый Алексей, нужно было всего лишь доБавить, что после того, как в стакан налито, он должен пройти по кругу и получить всеобщее одобрение.
Вообщем, из-за отсутсвия альтернативных и наиболее близких к истине решений, жюри постановляет присудить Вам приз зрительских симпатий и желает щастья, здоровья и успехов в Новом Году
А также дорогие друзья и просто прохожие позвольте от моего имени пожелать вам всего хорошего в НГ, света и тепла.
← →
Johnmen © (2002-12-30 13:46) [45]>Сатир © (30.12.02 13:39)
Ты просто недопонял, что тебе говорил Sha ©. И изложил своими словами его решение. (Видимо, чтобы не тратиться на пиво...:))
← →
Сатир © (2002-12-30 13:57) [46]2Johnmen © (30.12.02 13:46)
об чём речь? просто внимательно перечитай ещё раз оба ответа и скажи в чём разница
а об пиве вообще нигде не упоминалось%)
← →
Johnmen © (2002-12-30 14:15) [47]Я то быль внимательным (в отличие от ....).
И если ты считаешь, что есть разница между обходом всех людей по кругу и обходом всех людей по другой траектории (в контексте данной задачи), то я прекращаю сей флейм.....
← →
Сатир © (2002-12-30 14:38) [48]2Johnmen © (30.12.02 14:15)
и это верно
← →
Sha © (2002-12-30 14:45) [49]2 Сатир © (30.12.02 13:39)
За приз спасибо.
Тебе тоже всего хорошего, ну и отпраздновать, как следует.
Чаще радуй нас.
зы. Да, скажи напоследок - в чём разница между "всеобщим одобрением" и "каждый имеет право сказать" (интересно все же :).
ззы. Кто такой Алексей?
← →
Сатир © (2002-12-30 15:25) [50]2Sha © (30.12.02 14:45)
а в чём разница между глаголами "имеет" и "должен"?;)
А должен для того, чтоб когда последнему достанется больше, чтоб никто не возмущался.
А с Алеексеем значить я обшибся. Каюсь%). Вы тут все такие анонимные;)..
зы: напиши хотя бы своё имя в анкете во избежание подобных казусов
привет
← →
Sha © (2002-12-30 19:50) [51]2Сатир © (30.12.02 15:25)
:)
Страницы: 1 2 вся ветка
Текущий архив: 2003.01.20;
Скачать: CL | DM;
Память: 0.61 MB
Время: 0.03 c