陈意涵泳池秀:李尚志的博客----之12 不小心搞乱了行李箱的密码,怎么办?

来源:百度文库 编辑:九乡新闻网 时间:2024/10/05 22:19:39

数学聊斋(之12) 行李箱的密码

之12 不小心搞乱了行李箱的密码,怎么办?

200886晚,北京奥运会前夕,我到青海西宁完成了高教司组织的国家精品课程《高等数学》的培训讲课任务之后飞回北京。同行的还有承担培训会议的组织工作的高等教育出版社的几位工作人员。正在排队等候办理登机手续时,高教社的一位同志说她不小心将行李箱的密码锁的号码搞乱了,箱子打不开了。问我是否有办法尽快找到正确的密码?行李箱的密码锁的号码由三个数字组成,总共可以有一千个不同的号码。如果一个一个号码试验,需要试验一千次,时间太长。但是,考虑到她不是故意将号码弄乱,而是不小心碰到了某个号码才弄乱的,我假定她最多将三个号码中的某一个弄乱了,而不大可能同时弄乱两个号码或者三个号码。这样,在试验时就可以只限于与原来的号码只有一个数字不同的那些号码。与原来的三位号码只有第一位数字不相同的号码只有9个,只有第二位数字不相同的也是9个,只有第三位数字不同的还是9个。只要试验这27个号码,就可能找到正确的号码。

她按照我说的这个方法试验,果然很快就找到了正确的密码,打开了箱子。原来,她的初始密码是000,弄乱之后变成了900。如果按从小到大的顺序穷举1千个号码进行试验,从000开始要试验900次才能到900。而且还有可能一不小心将900跳过去。而按照我所说方法先固定后两位数字,只试验了10次就找出了正确答案。

我告诉她,其实还可以做进一步假设:不小心弄乱号码,最有可能只弄乱一个数字,而且可能性最大的是将这个数字只改变一“格”,也就是说将这一个数字加1或者减1。按照这样的假设,只要试验6次就行了:在原来密码的基础上将第一位、第二位、第三位分别加1或减1。比如,她的原始密码是000,弄乱之后的密码很有可能100,900,010,090,001,0096个号码之一。

最近,同样的故事在我自己身上又发生了一次,我自己也在机场办登机手续之前发现自己的箱子的密码被弄乱了,原来的密码打不开箱子。我胸有成竹地按照所说的方法试验,试验了6次果然打开了箱子。

有人告诉我:“千万不要将这个办法告诉别人。否则,你会被怀疑有本事打开别人的箱子偷东西; 如果小偷知道了你这个方法,也可以用来打开箱子偷东西。”我告诉他:这个担心是多余的。箱子的主人知道原来的密码,所以可以采用我的这个方法只实验少数几次就找到新的密码。只要行李箱的主人将原来的密码保密,别的人都不知道原来的密码,就不能在保持原来的密码的两位数字不变的基础上搜索出新的密码。