微软面试-海盗分金币
倒推法是对的,但你的错误在于,既然你说了“当且仅当半数以上的人同意时,才按照他的提议进行分配”,如果前三个人被杀,即使4号把所有金币都给了5号,一旦5号不高兴,结果也是50%对50%,4号还是会死。我的分析如下:
先说4号和3号:4号必须在只剩3个人的时候无条件支持3号,即使他不给自己任何金币,所以3号的方案是(100,0,0),3号会投自己一票,加上4号也会投自己一票,即使5号反对也无济于事。
先说2号:3号既然能把100黄金留给自己,那他肯定希望2号死。换句话说,无论2号方案拿出什么,他都会反对。在这种情况下,他根本就不会给任何金币,但是要想活命,就必须是3到1。为此他要讨好四号五号,怎么讨好呢?每人一个金币就够了。为什么?因为如果他死了,就像我刚才说的,4号和5号连一个金币都没有,所以2号的计划是(98,0,1,1)。
最难分析的是数字一:首先,他必须放弃数字二,因为要满足数字二,就必须付出99个金币,这显然不能满足利益最大化的要求。剩下的三个人中,3号最容易被收买。刚才我说如果2号有分配权,3号就什么都没有了,那么一个金币肯定可以换来3号的赞成票,然后4号5号再买一个就够了,剩下的一个就放弃了。刚才我说二号的方案是(98,0,1,1),所以需要两个金币才能赢得其中一个的支持。投票情况如下:1号自己一票,3号自己一票,4号5号各投一票,3比2。分配方案为(97,0,1,2,0)或(97,0,1,0,2)。