c语言:1000瓶水,有一瓶是有毒的,现共有10只老鼠,怎么判断毒水?
程序员文章站
2022-04-18 22:37:11
问题:1000瓶水,其中有一瓶是有毒的,一只老鼠喝下毒水会一天之后死亡,现在共有10只老鼠,怎么判断哪一瓶水是毒水?
分析:2^10=1024,则可以考虑利用二进制求解
解:给...
问题:1000瓶水,其中有一瓶是有毒的,一只老鼠喝下毒水会一天之后死亡,现在共有10只老鼠,怎么判断哪一瓶水是毒水?
分析:2^10=1024,则可以考虑利用二进制求解
解:给1000瓶水依次标号1至1000,将10只老鼠从右向左排成一列,第一瓶水让右边第1只老鼠喝,第2瓶水让第2只老鼠喝,第3瓶水让第1,2只老鼠喝,则第4瓶水让第3只老鼠喝,......第1000瓶水依次让第4,6,7,8,9,10只老鼠喝,记死亡的老鼠为1,未死亡的老鼠为0,按照二进制表示数的方法求出这个数,就知道哪瓶是毒水
上一篇: c语言和c++:2种方法:打印100~200 之间的素数
下一篇: linux 如何添加环境变量方法