问题:
经典的问题,给你两个鸡蛋,从100层楼上往下扔,从某个楼层开始,鸡蛋开始碎,请问最少扔多少次可以判断出楼层。
分析:
问题是经典的面试题,100层数据应该是14次,今天群里面同学给了一个解析解,(n+1)*n / 2这个通项解,直观上理解就是每次扔鸡蛋的楼层减1,第一次站在14楼扔,如果不碎,另一个鸡蛋从1楼开始往上走;如果14楼没碎,我们从(14+13)楼往下扔,如果没有碎,我们从15层开始往上扔另一个鸡蛋,如此循环递减,最终可以得到鸡蛋碎的位置。可以看出来,不同楼层之间的间隔越来越小,所以从前往后相加,和为n*(n+1)/2 > 100的最小n值就是最小次数。
总结:
这个题很讲究技巧。