缺失的数字是多少?
小红跟小明打赌玩一个游戏,先让小明从1~100的数字中挑选99个数字,然后一一随即报出,小红她就能找出那个缺失的数字。有什么好办法来实现小红这个把戏?整个过程中,她不能做任何笔记,只能用自己的脑子去记忆和思考。
分析:
1+2+3+...+100 = (1+100)*50=5050
有以下算法可以简化这个过程,小红每次把小明报的数加起来,然后只取最后两位数,例如,小明报数:35,88,21,65
那么,小红心里就这样纪录:
35 //第一次记住35即可
35+88=123 //所以心里记住 23 即可
23+21=44 //依然是2位数,记住44
44+65=109 //记住9即可
…..
最后99个数字全部报数完毕后,假如小红纪录的数字是 23 ,那么缺失的数字就是 50-23= 27 ,如果小红纪录的数字是62,那么缺失的数字就是 150-62 =88
规律如下,假如小红最后纪录的二位数是m,那么缺失的数字满足如下规律:
if($m<=50){ $num=50-$m; }else{ $num=150-$m; }