zoukankan      html  css  js  c++  java
  • 关于二进制的问题

    今天看了一个视频,里面有这么一个问题,100瓶水中有一瓶是毒药,老鼠吃了毒药后一周才会死,试问用多少只老鼠在一周中才可以试出毒药?
    视频是这样讲解这个问题的。
    给每一个瓶子编号如
    第一个瓶子:0000001
    第二个瓶子:0000010
    第三个瓶子:0000011
    ·······
    第一百个瓶子:1100100
    然后呢

    分成七个组,七只老鼠,一号至7号都喂含有那一列含有数字1 的药水。
    结果就出来了。
    假如说一号和五号老鼠死亡,那么这瓶药水的编号为1000100也就是第68瓶药水是毒药。
    视频的最后提出这么一个问题:有一百个囚犯排成一列,报数奇数就枪毙,偶数留下,
    再次报数奇数枪毙偶数留下直到最后一人,那么如果想活着,应该站那个位置

    开始想用列举的方法,后来想这样就没意思了。
    一会,我想到了解题思路。

    奇数的话二进制最后一个数字为1,偶数为0,因为最后一位是1x20或者0x20。其他较高位都是偶数,
    这个题的解法是最高位为1其他为都是0.也就是1000000=64.因为只留一个数嘛。

  • 相关阅读:
    Django发送邮件功能
    Django视图中使用本地缓存
    Django中利用type动态操作数据库表
    Django扩展内置User类
    Django开发环境配置(win10)
    MySql隔离级别
    染色法判定二分图
    关押囚犯
    迷一样的牛poj2182
    poj3468 A Simple Problem with Integers
  • 原文地址:https://www.cnblogs.com/gudaonihao/p/11106331.html
Copyright © 2011-2022 走看看