欢迎来到Nepire的校OJ入门题解——————17蓝桥选拔篇(七)
这次我主要是讲解第⑨届蓝桥杯全国软件和信息技术专业人才大赛校内选拔赛的七道题目,中间可能会扯到一些其他东西,然后就开始我们的入门题解吧呜喵
Problem G:吐槽
Description
“出题人你出的都是什么破题?”
“谁出的?我没出过。既然你这么说了,那我就出一题吧。”
n瓶酒中有一瓶有毒,现在用小白鼠测试。如果小白鼠喝到有毒的酒,那么过1小时就会死亡,而你只有1小时的时间,要想测出哪瓶酒有毒,至少需要多少只小白鼠?Input
输入数据第一行是一个整数T(T <= 100),表示有T组测试数据。
每组数据输入一个整数n(0 < n <= 100000)。Output
每组数据输出一行,一行输出一个整数,表示答案。
Sample Input
2
2
3Sample Output
1
2Source
解题思路
小Nep觉得这题可能是这次考试中解法最抽象的可能一次讲不清,就发现哪里不对再往上填东西,可以把小老鼠的生或死看作1或0,那么n瓶酒编号1-n的二进制表示法所需要的 最大位数为x 。
(2^x>=n且2^(x-1)小于n