盲人翻牌问题

题目是这样的:一个盲人面前有7张牌,他只知道其中有4张正面朝上的牌,问怎么把牌分成两堆,使得每堆正面朝上的牌一样多?

 

用纸片试一下,把牌直接分两堆,发现一堆3张一堆4张,然后把有4张牌的那堆翻过来,那正面朝上的就一样多了,不管原来分的两堆牌中正面朝上的有几张。

 

后来想想,这个问题其实可以扩展成一般的问题:一个盲人前面有n张牌,他只知道这n张牌中有m(m为偶数)张是正面朝上的,问怎怎么把牌分两堆,使得每堆正面朝上的牌一样多。解决方法是:把n张牌任意分成两堆,一堆m张,另一堆n-m张,然后把有m张牌的那堆牌全部翻过来即可。这个方法的正确性证明如下:

 

假设有m张牌的那堆牌中正、反面朝上的牌数分别为x,y(很显然 x+y=m),那么另一堆牌中正、反面朝上的牌数为m-x,n-m-y。此时,把有m张牌的那堆牌全部反面,那么该堆牌中正、反面的牌数就变为了y,x张。由于x+y=m,所以y=m-x,其中y为第一堆中正面朝上的牌,m-x为第二堆中正面朝上的牌,即此时两堆正面朝上的牌数一样多了。

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值