задачка №2, посложнее
Jun. 24th, 2005 11:54 pmгруппу из десяти пользователей ЖЖ сажают в тюрьму. сажают каждого в свою камеру, общаться после посадки они не могут. поодиночке их вызывают на допрос. на допрос вызывают в случайном порядке, то есть может оказаться, что, скажем, Мишу вызывали уже три раза, а Васю - ещё ни одного.
перед посадкой им сообщают, что если никто из них не расколется, то их отпустят. но только когда кто-то из них скажет "вы уже всех вызывали, и никто не раскололся, так что отпускайте нас". если же в этот момент окажется, что вызывали ещё не всех - то, наоборот, наказание будет чрезвычайно жестоким.
в комнате для допроса есть лампочка - очень тусклая, поэтому освещённости в комнате она практически не прибавляет, поэтому следователь не обращает внимания - горит она, или нет. пользователь ЖЖ может включать и выключать лампочку по своему усмотрению, следующий вызванный на допрос увидит лампочку в том же состоянии, в котором её оставит предыдущий.
перед разводкой по отдельным камерам пользователи ЖЖ оказываются вместе, и, зная про лампочку и про условие их освобождения, вырабатывают тактику, как им наверняка выйти на свободу.
главный вопрос: каков алгоритм действий пользователей ЖЖ, приводящий к успеху? бонус вопрос: сколько им в среднем придётся просидеть в тюряге? гм... слово "в среднем" здесь, наверное, не очень уместно... каково мат. ожидание срока, который им придётся отсидеть при условии, что следователь не напрягается и допрашивает каждый день только одногочеловека пользователя ЖЖ.
как и в прошлый раз, комменты будут скриниться по умолчанию и расскриниваться (кроме содержащих ответ) по мере их дохождения до меня.
да и вот ещё... комменты типа "эта задачка для 6 класса" без решения, или "эту задачку я уже видел [в интернете|в ЖЖ|где-то|в Ж]" я, пожалуй, буду удалять даже не расскринивая.
Update: победители (в порядке поступления):
sply
Update #2: Приём решений прекращаю (за исключением апдейтов типа мат. ожидания времени отсидки), комменты расскриниваю.
перед посадкой им сообщают, что если никто из них не расколется, то их отпустят. но только когда кто-то из них скажет "вы уже всех вызывали, и никто не раскололся, так что отпускайте нас". если же в этот момент окажется, что вызывали ещё не всех - то, наоборот, наказание будет чрезвычайно жестоким.
в комнате для допроса есть лампочка - очень тусклая, поэтому освещённости в комнате она практически не прибавляет, поэтому следователь не обращает внимания - горит она, или нет. пользователь ЖЖ может включать и выключать лампочку по своему усмотрению, следующий вызванный на допрос увидит лампочку в том же состоянии, в котором её оставит предыдущий.
перед разводкой по отдельным камерам пользователи ЖЖ оказываются вместе, и, зная про лампочку и про условие их освобождения, вырабатывают тактику, как им наверняка выйти на свободу.
главный вопрос: каков алгоритм действий пользователей ЖЖ, приводящий к успеху? бонус вопрос: сколько им в среднем придётся просидеть в тюряге? гм... слово "в среднем" здесь, наверное, не очень уместно... каково мат. ожидание срока, который им придётся отсидеть при условии, что следователь не напрягается и допрашивает каждый день только одного
как и в прошлый раз, комменты будут скриниться по умолчанию и расскриниваться (кроме содержащих ответ) по мере их дохождения до меня.
да и вот ещё... комменты типа "эта задачка для 6 класса" без решения, или "эту задачку я уже видел [в интернете|в ЖЖ|где-то|в Ж]" я, пожалуй, буду удалять даже не расскринивая.
Update: победители (в порядке поступления):
Update #2: Приём решений прекращаю (за исключением апдейтов типа мат. ожидания времени отсидки), комменты расскриниваю.
(no subject)
Date: 2005-06-25 04:51 am (UTC)(no subject)
Date: 2005-06-25 04:52 am (UTC)(no subject)
Date: 2005-06-25 05:00 am (UTC)(no subject)
Date: 2005-06-25 05:49 am (UTC)Остальные придерживаются следующего правила:
если юзер в комнате первый раз, то, если лампочка не горит он ее зажигает, иначе ничего не делает
"счетчик", попадая на допрос, гасит лампочу и прибавляет 1 в уме
когда "счетчик" доходит до N (число юзеров), то он говорит, что, мол, ВСЕ
не помню как считать мат. ожидание :-) ?
Date: 2005-06-25 06:24 am (UTC)он насчитает 10 смен, включая свое переключение, он должен сказать:
"вы уже всех вызывали, и никто не раскололся, так что отпускайте нас" :-).
Про ожидание точно не помню... кажется (N+1)/2 - тогда каждого наиболее вероятно вызовут 55 раз, то есть около 55 дней им там сидеть :-) - хотя в бонусе могу ошибаться :-) не судите строго - любил пить пиво на теорвере :-)
(no subject)
Date: 2005-06-25 06:43 am (UTC)Алгоритм действия:
- Все, кроме Васи, зажигают лампу, если видят выключенную лампу впервые.
- Вася выключает лампу.
- Как только Вася выключает лампу в девятый раз, он требует освобождения.
2. Пусть изначально лампа включена.
Алгоритм действия:
- Все, кроме Васи, выключают лампу, если видят включенную лампу впервые.
- Вася включает лампу.
- Как только Вася включает лампу в девятый раз, он требует освобождения.
3. Начальное состояни неизвестно.
Алгоритм действия:
- Все, кроме Васи, зажигают лампу, если видят выключенную лампу впервые или во второй раз.
- Вася выключает лампу.
- Как только Вася выключает лампу в семнадцатый раз, он требует освобождения.
P.S. Что-то мне подсказывет, что в третьем случае можно освободится быстрее, но как-то не придумывается алгоритм.
так как?
Date: 2005-06-25 07:01 am (UTC)(no subject)
Date: 2005-06-25 08:25 am (UTC)(no subject)
Date: 2005-06-25 08:30 am (UTC)назначается один, который типа главный и руку на пульсе держит - условно 10й. а все время бъется на промежутки, причем за каждый промежуток времени "отвечает" только один заключенный. из общих соображений берем промежуток равный 10 дням.
(no subject)
Date: 2005-06-25 08:59 am (UTC)Пусть есть N пользователей.
Договор
1)Первый включает лампочку 2^0 раз
2)второй 2^1 раз
3)Третий 2^2 раз
...
Последний только выключает и запоминает выключения. Как только он выключит (2^N - 1) - (все единички) раз, то значит все были.
...
М.... если для случая с начальным неизвесным состоянием, то сдвигаем вправо, первый включает 2^1 раз, второй - 2^2 итд, сторож не смотрит на младший бит.
(no subject)
Date: 2005-06-25 09:51 am (UTC)После трех смен состояния все пользователи были допрошены.
Среднее время, с учетом одного допроса в день = 5-6 дней (точнее 5,5 :)
(no subject)
Date: 2005-06-25 10:46 am (UTC)А может быть так?
Date: 2005-06-25 11:49 am (UTC)1) выбрать главного в команде пользователейЖЖ. Главным становится тот, кто идет на допрос в первый день. Если лампа включена в этот первый день, он ее выключает .
Этот человек и собирает результирующуюю информацию.
2) Все, кто побывал на допросе должны сообщать об этом главному путем вклюючения лампы, но каждый, кто побывал на допросе должен включить лампочку только 1 раз. Попадая второй раз на допрос, лампу он не включат.
3) Выключать лампочку имеет право только главный
4) Включать можно только выключенную лампочку. Т.е. даже если пользователь жж попадает в первый раз, но лампочка уже горит, он не предпринимает никаких действий.
5) Когда главный понимает, что все побывали на допросе, он сообщает об этом и всех отпускают
Таким образом, основная идея состоит в том, что пользоваель жж включает лампочку, тем самым он сообщает главарю о том, что уже побывал на допросе, а выключение означает: "сообщение принял". Очевидно, что просидят там пользователи жж не менее 19 дней.
(no subject)
Date: 2005-06-25 12:18 pm (UTC)КОбщ - общее кол-во человек (после на раз два рассчитайсь :) )
ЖЖ - обыкновенный жж юзер
КВыкл - количество выключений
ЛАМПОЧКА (ЖЖ)
(
ЕСЛИ (ЖЖ = ГВ и СОСТ_ЛАМП = горит)
ТО (КВыкл++; СОСТ_ЛАМП = выключено)
ИНАЧЕ ЕСЛИ (ЖЖ еще не влючал не разу и СОСТ_ЛАМП = выключено) TO (СОСТ_ЛАМП <- горит)
)
ПОКА (КВыкл+1 < KОбщ)
(
ЖЖ<-rand; ЛАМПОЧКА (ЖЖ)
)
(no subject)
Date: 2005-06-25 01:32 pm (UTC)они должны назначить одного ответственного. Каждый из заключенных, кроме ответственного должен всего один раз за все время выключить лампочку (перед этим она должна быть включена - т.е. возможно что некоторые ее смогут выключить далеко не на первом допросе). ответственный же увидев выключенную лампочку выключает ее и инкрементирует счетчик в своей голове. Когда его счетчик станет равным 9 - он может выступать с речью.
возможно, неоптимально, но...
Date: 2005-06-25 02:23 pm (UTC)Общий срок отсидки предсказать невозможно - он может быть любым числом, кратным 10, в зависимости от рассеяности следователя. :-)
(no subject)
Date: 2005-06-25 03:34 pm (UTC)(no subject)
Date: 2005-06-25 04:29 pm (UTC)(no subject)
Date: 2005-06-25 04:37 pm (UTC)(no subject)
Date: 2005-06-25 04:38 pm (UTC)(no subject)
Date: 2005-06-25 05:04 pm (UTC)(no subject)
Date: 2005-06-25 05:07 pm (UTC)(no subject)
Date: 2005-06-25 05:13 pm (UTC)(no subject)
Date: 2005-06-25 05:16 pm (UTC)(no subject)
Date: 2005-06-25 05:20 pm (UTC)