据说是微软面试的巨难题目:10个海盗抢到了100颗宝石
五个海盗抢到了100颗宝石,每一颗都一样大小和价值连城。他们决定这么分:
抽签决定自己的号码(1、2、3、4、5)
首先,由1号提出分配方案,然后大家表决,当且仅当超过半数的人同意时,按照他的方案进行分
配,否则将被扔进大海喂鲨鱼
如果1号死后,再由2号提出分配方案,然后剩下的4人进行表决,当且仅当超过半数的人同意时,
按照他的方案进行分配,否则将被扔入大海喂鲨鱼
依此类推
条件: 每个海盗都是很聪明的人,都能很理智地做出判断,从而做出选择。
问题: 第一个海盗提出怎样的分配方案才能使自己的收益最大化?
==========================
在看一个VC教程的时候发现的。。。
很多人都说,每个海盗都想自己分钱,我觉得这个很没道理,海盗要的是命和钱,而不是分钱。
下面分析:
最重要的一点是:超过半数的人同意,才行。关键词 超过!
所以,当剩下4,5的时候,4必死无疑。因为只要5不同意,就不能超过半数。
所以4必须要保证3活着。
这样,剩下3,4,5的时候,3的分配方式:100.0.0,4肯定同意,3同意。
所以,4,5只要是1,2给他们钱,他们都会同意。而3必然反对1,2。
剩下2,3,4,5的时候,2必须得到4,5的支持,98.0.1.1 这样得票是3:1,
推到最开始的时候,3见钱就同意,4,5超过1就同意。
1给出的最合理的就是: 97.0.1.2.0或者97.0.1.0.2
得票3:2