缺失的数字是多少?作者:luke

小红跟小明打赌玩一个游戏,先让小明从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;
  }

时间:2018-3-27 分类:练习