十问知底
表演者说:“上面是 11 个人写数,只有 11 个数。假如扩大范围,在小
于 1024 范围内任想一个数,让你猜,你需多少次才能猜中?” “这可很难说了,”有人回答说,“把所有的数问遍,需一千零二十四
次,准猜中了!” “那还算什么能耐?”表演者说,“我最多只提十个问题,对方也只需
要回答‘是’或‘不是’,便可以了。”
有人想了个“187”,说:“我想好了,允许你问一百次,看能猜中不?” 表演者说:“最多十问,大家可以作证。”
于是问答开始了。
表演者问:“大于 512 么?” 对方答:“不是!”
“大于 128 么?” “是!”
“大于 192 么?” “不是!” “大于 160 么?” “是!”
“大于 176 么?” “是”
“大于 184 么?” “是!”
“大于 188 么?” “不是!” “大于 186 么?” “是!”
表演者大声说:“你想的数在 188 和 186 之间,肯定是 187 了!” 果然没用十问便猜中了!
表演者提的问题,隐含着什么奥妙呢?
**解:**表演者的问题巧妙地利用了“折半”策略。
1024 连续“折半”的结果是:512、256、128、64、32、16、8、4、2、
1 共十个数。
表演者先折半提问,根据对方回答的“是”或“不是”,用加加、减减折半数字,逐步缩小猜数范围。如问:“大于 128 么?”对方答“是”,则
在 128 上加它的半数(128+64=192)再问,对方答“不是”,则减去 64 的折半(192-32=160)⋯⋯这样继续问下去,最后便“水落石出”了!
折半思想,有着重要的应用价值。
例如,某地的地缆线忽然中断了,数千米长的距离,怎么查找故障?
1
用“折半”思想便很容易解决。查线员先在发生故障地段的 2 处进行
1测量,确定故障在哪一端,在有故障的一端,仍取它的 处测量 依此
2
检测下去,逐步缩小范围,最多抽查十处,故障的准确位置便可找到了!