问题一分析3个人ABC如何平分一杯酒而且都没有意见 首先由A将一杯酒分成三份,BC可以把自己对三杯酒的喜好做一个排序。 如果BC最喜欢的不是同一杯酒,那么他们两把自己最喜欢的酒拿走,剩下的一杯给A,问题解决。 如果BC最喜欢的是同一杯酒,不妨假设他们都最喜欢第一杯,此时我们再来看看他们最不喜欢的酒。 如果他们最不喜欢的是同一杯酒,那么把他们最不喜欢的这杯酒给A,把另外两杯酒混合,BC两平分它,问题解决。 如果他们最不喜欢的不是同一杯酒,不妨假设B最不喜欢第二杯酒,C最不喜欢第三杯酒。此时,由B将第一杯酒分成两小杯,C挑选他喜欢的那一小杯,剩下的一小杯给B,由C将第二杯酒分成两杯,由A挑选他喜欢的一小杯,剩下的一小杯给C,由B将第三杯酒分成两小杯,由A挑选他喜欢的一小杯,剩下的一小杯给B,问题完美解决。 问题二分析4个人ABCD如何平分一杯酒而且都没有意见 首先由A将一杯酒分成两杯 如果剩下的三人中有两人喜欢同一杯酒,不妨假设BC喜欢第一杯,D喜欢第二杯,那么BC分第一杯,AD分第二杯,问题解决。 如果BCD都喜欢同一杯,不妨假设他们都喜欢第一杯。那么由A将第二杯酒分成两小杯 如果BCD喜欢同一小杯,不妨假设他们都喜欢第一小杯,那么第二小杯给A,将第一小杯和第一杯酒混合,BCD按问题一的方法平分,问题解决。 如果BCD喜欢的不是同一小杯,不妨假设BC喜欢第一小杯,D喜欢第二小杯,那么BC平分第一小杯,AD平分第二小杯,这样ABCD就平分掉了第二杯酒,接着ABCD按问题二的方法继续平分第一杯酒。(这是一个递归,存在着需要无穷步才能解决的可能性,这是这种解决方法的一个瑕疵,改进方法以后想到再贴出来) |