热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

测试次数--蓝桥杯

x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。x星球

x星球的居民脾气不太好,但好在他们生气的时候唯一的异常举动是:摔手机。
各大厂商也就纷纷推出各种耐摔型手机。x星球的质监局规定了手机必须经过耐摔测试,并且评定出一个耐摔指数来,之后才允许上市流通。


x星球有很多高耸入云的高塔,刚好可以用来做耐摔测试。塔的每一层高度都是一样的,与地球上稍有不同的是,他们的第一层不是地面,而是相当于我们的2楼。


如果手机从第7层扔下去没摔坏,但第8层摔坏了,则手机耐摔指数=7。
特别地,如果手机从第1层扔下去就坏了,则耐摔指数=0。
如果到了塔的最高层第n层扔没摔坏,则耐摔指数=n


为了减少测试次数,从每个厂家抽样3部手机参加测试。


某次测试的塔高为1000层,如果我们总是采用最佳策略,在最坏的运气下最多需要测试多少次才能确定手机的耐摔指数呢?


请填写这个最多测试次数。


注意:需要填写的是一个整数,不要填写任何多余内容。

 

题解:纯数学题


有三部手机让你摔,要求是一定要让你摔坏三部手机(实锤土豪),并且摔得次数要最多,over


好,那我就假设:

第一部手机在第500层摔坏

第二部手机在第250层摔坏

假设第三部手机在x层摔坏(1<=x<=250,临界条件)----------这里也算摔一次

要求摔得次数最多,那就从第1层开始摔

第1层----不坏

第2层----不坏

第3层----不坏

第x-1层---不坏

所以第三部手机一共摔了1+2+3+.....+x-1=x-1+(x-1)*(x-2)/2次

500+250+x-1+(x-1)*(x-2)/2<=1000

解得x的最大值就可以了

x<=16

最后答案为16+3


推荐阅读
author-avatar
zz998877
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有