Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Потрепаться";
Текущий архив: 2004.01.09;
Скачать: [xml.tar.bz2];

Вниз

Прикольная задача с РСДН - 5 пиратов   Найти похожие ветки 

 
Igorek   (2003-12-18 13:09) [0]

"5 пиратов делят добычу - 1000 золотых (богатенькие буратинки, честное слово! стыдно!)

Делят "по понятиям", которые просты, как деревянная нога.
Сначала самый старший и уважаемый пират раздает каждому его долю.
Если большинство коллег° согласно, на том и останавливаются.
Если нет - пират перестает быть самым старым и уважаемым, и уходит покормить рыбок°°.

° Если мнения разделились поровну, то решающий голос - у самого старшего и уважаемого пирата. Естественно, в свою пользу.

°° Пираты очень, очень не любят уходить кормить рыбок. Только если их попросят большинство коллег.

Пираты флота Ея Королевского Величества - люди в высшей степени образованные, хотя и беспринципные.
Поэтому все они прекрасно считают на много ходов вперед, почти как Каспаров.

Как будет разделена добыча?"

(с) Кодт модератор


 
Rouse_   (2003-12-18 13:21) [1]

600 и по сто остальным
500 и по 125 остальным
400 и по 150 остальным
...
Каждому по 200 ;)

Дальше продолжать?

А вообщето достаточно разделить добычу между собой и двумя другими поровну, и не пойдет он кормить рыбок ;)


 
nikkie   (2003-12-18 13:24) [2]

если предположить, что
1. каждый пират действует имея цель максимизировать свою долю после дележа
2. сговор 2-х и более пиратов с целью последующего передела золотых, заработанных совместной тактикой, невозможен
3. каждый пират, становящийся старшим, исключает возможность вероятностного исхода (т.е. старший пират избегает ситуации, когда пират X видит возможность заработать одинаковое максимальное количество монет при голосовании и "за", и "против", и выбирает произвольный вариант голосования, причем возможно, что голосование "против" приведет к свержению старшего пирата)

то старший пират берет себе 995 золотых, а оставшиеся 5 распределяет одним из 3 способов (по старшинству)
0 - 1 - 2 - 2
0 - 1 - 3 - 1
0 - 0 - 3 - 2


 
Igorek   (2003-12-18 13:38) [3]

А главное ответ - супер! (Если я правильно решил)


 
nikkie   (2003-12-18 13:41) [4]

>Igorek
ну так давай свой ответ (без решения пока).


 
Кабан   (2003-12-18 13:58) [5]

нафига давать ответ без решения. дайте решить, интересная задача


 
Кабан   (2003-12-18 14:02) [6]

Мое решение (по старшинству): 998 - 0 - 1 - 0 - 1


 
DAC   (2003-12-18 14:07) [7]

по убыванию возраста, начиная с себя 498-1-501-0-0


 
Кабан   (2003-12-18 14:10) [8]

мнения разделились :)


 
Reindeer Moss Eater   (2003-12-18 14:26) [9]

Старший возьмет себе 0
Двум другим даст по 500.
Еще двум тоже по нулям.


 
Reindeer Moss Eater   (2003-12-18 14:28) [10]

Иначе он умрет.


 
Agent13   (2003-12-18 14:29) [11]

Правильный ответ: см. Кабан (18.12.03 14:02) [6]
Я видел похожую задачу с решением, только там было 10 пиратов и 100 золотых, но сути дела это не меняет.


 
nikkie   (2003-12-18 14:32) [12]

почитав ветку на рсдн, понял, что у меня в последнем шаге рассуждения ошибка. правильный ответ 997-0-1-0-2. на рсдн есть решение близкое к этому, только опять на последнем шаге ошибка...


 
DAC   (2003-12-18 14:35) [13]


> nikkie © (18.12.03 14:32) [12]

согласен 997-0-1-0-2


 
nikkie   (2003-12-18 14:42) [14]

блин... до чего же неудобный форум на рсдн.


 
Igorek   (2003-12-18 14:43) [15]

Мое решение - старший забирает все себе. Народ голосует 2 на 2. Те, кто голосует "за" понимают, что больше все равно не получат и нефиг комманду уменьшать.
Могу доказать.
:-)))


 
Кабан   (2003-12-18 14:43) [16]

Ну раз все сошлись на варианте 997-0-1-0-2, можно опубликовать решение задачи:

Формализуем несколько условий, скрытых в тексте:

1. Каждый пират стремится максимизировать свою долю добычи.
2. Каждый пират готов отказаться от добычи, если понимает,
что в противном случае он отправится кормить рыбок.
3. Каждый пират с удовольствием посмотрит, как его товарищь
кормит рыбок, если знает что его доля из-за этого не
уменьшится.

Решение:

1. Допустим осталось два пирата, тогда самый старший и
уважаемый пират оставит все деньги себе.

2. Допустим осталось три пирата. Тогда самый младший будет
соглашаться на любой раздел добычи, поскольку
рискует остаться совсем без денег. Старший пират може
разделить деньги по старшеству: 1 - 0 - 999. И большинством
голосов выиграть спор.

3. Допустим осталось 4 пирата.
Тогда сымый старший из них может поделит деньги по
старшенству след. способом: 0 - 1 - 0 - 999 и при равенстве
голосов выиграть спор. Он не может поделить монеты:
1-0-0-999, поскольку, тогда младший пират не согласится, т.к.
захочет посмотреть как старший кормит рыбок.

4. Вернемся к первоначальному дележу. Что мы имеем:
а) Младший пират готов согласится на 1 золотой, иначе рискует
ничего не получить.
б) Третий также знает, что не получит ничего, если пиратов
останется четверо.

Теперь, старший может разделить монеты:
1 - 0 - 1 - 0 - 998 за проголосуют 1, 3, 5


 
Reindeer Moss Eater   (2003-12-18 14:45) [17]

Первое решение о дележе монет принимает старший пират.
Его задача - иметь не меньше 2 согласных с его решением. Иначе он умирает.
Как этого достичь?

Поделить на троих?
Но тогда двое других с деньгами могут поддержать двоих других без денег для того, что бы утопить старшего пирата и делить еще и его деньги.
Старший пират вынужден дать поровну двум пиратам, и ничего не оставить себе, что бы у двух счастливых обладателей золота не появился соблазн продолжать делить дальше.


 
nikkie   (2003-12-18 14:51) [18]

>Кабан
>1. Допустим осталось два пирата, тогда самый старший и
> уважаемый пират оставит все деньги себе.
ошибка! решение принимает младший пират, который мочит старшего и забирает все деньги себе.

кстати, я решал поняв выражение "кормить рыбок" буквально. т.е. никого не убивают. если уж убивают, надо определить во сколько золотых пираты ценят свою жизнь. я получается решал при цене 0 золотых за жизнь. условие, что никто не хочет умирать означает, что цена >= 1000 золотых. интересно, что будет, если они ценят жизнь в 1 золотой...


 
Кабан   (2003-12-18 14:55) [19]

>>ошибка! решение принимает младший пират, который мочит
>>старшего и забирает все деньги себе.

Это как??????

Для тех кто в танке, повторяю условие задачи:

"Если мнения разделились поровну, то решающий голос - у самого старшего и уважаемого пирата. Естественно, в свою пользу."


 
nikkie   (2003-12-18 14:58) [20]

>Для тех кто в танке, повторяю условие задачи:
для тех, кто на бронепоезде объясняю. голос 1 пирата не может разделиться поровну. соответственно предпоследнему пирату ничего решать не придется, все решено без него :))
>Если большинство коллег° согласно, на том и останавливаются.


 
DiamondShark   (2003-12-18 14:58) [21]

Старший загребает всё.


 
Кабан   (2003-12-18 15:03) [22]

а есть ли уверенность, что фраза
"если большинство коллег согласно"
означает, что самый старший и уважаемый пират не учавствует в голосовании


 
nikkie   (2003-12-18 15:08) [23]

уверенности нет. твое понимание тоже возможно. тогда решение правильное. только так неинтересно - очень легко распространить на N пиратов. попробуй решить с моим пониманием.


 
Кабан   (2003-12-18 15:10) [24]

ну логика не сильно меняется, решение все равно надо проводить сверху вниз


 
Vint   (2003-12-18 15:14) [25]

глупая задачка :(
если исходить из того, что каждый пират стремится к максимальной выгоде, то:

старший не может взять себе долю т.е.
0-500-500-0-0

при любом другом раскладе его убивают и после соответственно поучается 500-500-0-0

пират получивший 500 не будет поддерживать нулевых т.к. получит тогда меньше, т.е. 333


 
Igorek   (2003-12-18 15:19) [26]

Исходим из такого уточнения: если пирату достанется больше если выкинуть старшего, то он голосует "против".


 
nikkie   (2003-12-18 15:30) [27]

>Кабан
>ну логика не сильно меняется
не сильно. цифирьки меняются. и при 7 пиратах уже не однозначно раскладывается.

>Igorek
уточнил, называется...


 
Vint   (2003-12-18 15:30) [28]

>Igorek © (18.12.03 15:19) [26]

это ни чего не меняет!
ведь не известно кто станет старшим пиратом?


 
nikkie   (2003-12-18 15:39) [29]

>ведь не известно кто станет старшим пиратом?
пираты не в один день родились. старший биологически.


 
Vint   (2003-12-18 15:58) [30]

>nikkie © (18.12.03 15:39) [29]

а если двое там двойняшки?
два брата-пирата :)


 
Igorek   (2003-12-18 22:09) [31]

Ну так что так быстро закончилось обсуждение? Неужели никому не интересно почему старший себе все забирает?


 
OlDemon   (2003-12-19 06:55) [32]

Дык чего тут еще мусолить?? Кабан привел правильное и логичное решение. Хорошая задачка.


 
Vlad Oshin   (2003-12-19 10:46) [33]

Мое решение (по старшинству): 998 - 0 - 1 - 0 - 1

не понял, честно говоря
все 4 будут против такого дележа и замочат старшего


 
Igorek   (2003-12-19 11:57) [34]


> OlDemon © (19.12.03 06:55) [32]
> Дык чего тут еще мусолить?? Кабан привел правильное и логичное
> решение. Хорошая задачка.

Ну-ну.

Вот мое решение:
Пронумеруем стадии голосования от 5 до 1 (номер = колл пиратов)
Определим как будет голосовать пират на любой стадии:
если ему предложено меньше, чем он получит на следующей стадии (если выкинуть старшего) то "против" иначе "за". Они же беспринципные (см. условие) и не голосуют "против" только для того что-бы увидеть как товарищ кормит рыбок.
Делит пират так, что бы набрать большинство или равное колличество голосов при макс. выгоде

Теперь пойдем от 1 стадии до 5:

стадия:дележ :голоса коллег
1 : 1000 :
2 : 0/1000 :+
3 : 1000/0/0 :+-
4 : 1000/0/0/0 :-++
5 : 1000/0/0/0/0 :-+++

Кто оспорит?


 
Vint   (2003-12-19 12:14) [35]

>Igorek © (19.12.03 11:57) [34]

ну что ты паришся с этой ерундой... :)
если често ничего не понял из твоего столбика...
или что, каждый раз старший забирает все, что ли?


 
Vlad Oshin   (2003-12-19 12:14) [36]

на каком основании не убъют главного, если он хотя бы возьмет больше половины?


 
Vlad Oshin   (2003-12-19 12:17) [37]


> пираты не в один день родились. старший биологически.

где сказано, что так передается старшинство?
и где сказано, что оно вообще передается?


 
Bless   (2003-12-19 13:12) [38]

Если старшинство определяется по возрасту или каким-то иным способом, по которому все заранее знают, кто будет следующим старшим, то Кабан [16] прав.
У меня тоже вышло 998-0-1-0-1.

Могу аргументировать, если захотите. Хотя в [16] все достаточно аргументировано, если подумать немного.


 
Vint   (2003-12-19 13:33) [39]

>Bless (19.12.03 13:12) [38]

даааа...
ну и что же мешает замочить им старшего и разделить на четверых например?


 
Bless   (2003-12-19 13:53) [40]

>у и что же мешает замочить им старшего и разделить на четверых
>например?

998-0-1-0-1 - это по порядку убывания старшинства.
Пронумеруем их для удобства. 1-самый старший,....5 - самый младший.
Замочить старшего 2-му и 4-му ничего не мешает.
А вот 3 и 5 мочить его не будут. Потому что если их останется 4, то добычу поделят не поровну, а так:
...-999-0-1-0. Соответственно 2,4 - за, 3,5 - против.
Ты спросишь, а почему это 4-ый согласится на 1 монету? Да потому что, если он не согласится, то завалят старшего, их останется трое и будет такой дележ ...-...-999-0-1, и он останется с носом.
Тут у тебя может возникнуть вопрос:

а почему, когда их останется трое, 1-у монету получит 5-ый, а не 4-ый. Ну хотя бы потому, что на месте 3-го (который теперь старший) такой дележ неразумен. Ведь 4-ый в любом случае против.
Ведь, завалив третьего, их останется двое. И он (4-ый)заберет все себе. А вот самый младший обидится, если ему не дать ничего и будет 2 голоса (4-ый,5-ый) против 1 (3-го).



Страницы: 1 2 вся ветка

Форум: "Потрепаться";
Текущий архив: 2004.01.09;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.55 MB
Время: 0.013 c
1-25353
Olphi
2003-12-21 13:52
2004.01.09
перключение MDI форм в меню


14-25562
Layner
2003-12-17 16:42
2004.01.09
ASP .NET Миф или реальность.


14-25591
Zhenka
2003-12-17 05:57
2004.01.09
Простенькая задачка по планированию )))


9-25178
Дмитрий К.
2003-06-20 16:55
2004.01.09
Сохранение изображения текущей сцены OpenGL


14-25542
Style
2003-12-18 18:57
2004.01.09
Бета-чай :))) Я плакалъ





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский