最近流行数学题,也来一个有关死囚的

  • O
    OpEth
    这题目有问题啊,喝了毒药后一个星期才死,却要求一个星期内就得查处哪瓶是毒药,那时候大家都还没死呢,怎么知道哪瓶是毒药。。。。。
  • a
    aweiwei
    有一期UCG上有类似问题,只是改成了100楼往下扔鸡蛋,看哪一层开始碎。
  • x
    xuhan
    sorry,是一个星期后查出毒药,表达问题
  • a
    aweiwei
    那个意思是只能试一次,可以N个人同时喝。
  • N
    NoLife
    d.10个

    把1000瓶分成两个500瓶,让一个死囚喝其中的一个500,然后根据他的死活判断哪个500是有毒的,再把500分成两个125...继续下去,需要10个死囚就能把有毒的那萍找出来各
    -----------------------------------------

    没审好题,当我没说~

    [本帖最后由 NoLife 于 2007-10-18 16:39 编辑]
  • O
    OpEth
    你这个不对,是只能喝一次,一次性就要判断出哪一瓶是毒药,否则挨个喝下去,用一个死囚就够了。。。。。
  • w
    weskerxyz
    瞎说1个死囚就够。
    让第1个喝了500瓶,他死了也只能
    证明毒药是500瓶里其中一个,怎么可能一个死囚够?
  • O
    OpEth
    一个死囚,一瓶一瓶的喝,喝一瓶歇一个礼拜。。。。。
  • a
    aweiwei
    先准备十个标签瓶,分别标上“1—10”号,(2的10次方是1024,表示1000足够了),再把待测瓶译成二进制码,如果某个二进制位是1,则把此待测瓶中的药品放入标签瓶中混合,这样得到十个混有不同药品的标签瓶,分别让1~10号死囚喝。一个礼拜后,哪几个死囚死了,则表示标签瓶中含有毒药,此瓶数值用二进制中的“1”表示,再反译成十进制就可以得出哪个瓶是有毒的了。

    例:吃1、3、5、7、9标签瓶的死囚死了,表示为二进制就是1010101010,就是第682个瓶是有毒的。
  • h
    handsomeken
    问题是,他死还是没死,需要一个星期了,时间上不够啊。
    1000
    500
    250
    125
    63
    32
    16
    8
    4
    2

    似乎是10个人,可视需要好几个星期啊。
  • O
    OpEth
    爽歪歪很高,真的不是google的么?
  • p
    pastezhu
    是10个
    不过按照楼上的喝法,至少要N个星期。

    1000个瓶子分别编号0001~1000
    10个犯人编号A7,A6,A5,A4,A3,A2,A1,A0
    每个编号转换成2进制,1000可以用10位二进制表示,
    第N位为1的让A(n)个犯人喝,
    然后等1星期,看是哪几个犯人死掉,将相应的编号记作1,没死掉的记作0,
    将获得的二进制变成10进制编号,那瓶药物就是毒药。

    这样平均每瓶只要10口,一星期全部搞定。

    --------------------

    残念,写晚了。
  • N
    NoLife
    这里没看懂。怎么把1000个待测瓶转成2进制,是依次0,1,10,11这样下去吗?

    “某个二进制位”是1是指什么?
  • x
    xfiori
    999个,只有一个星期时间的话
  • g
    gebai318
    。。还真是10个
  • z
    zhaolinjia
    爽歪歪IS BIG AND STRONG
  • w
    weskerxyz
    你会LZ的帖子的时候,连LZ写了什么都不看吗?

    LZ最后一句话:
    请问最少用多少死囚(为了人道主义)可以在一个星期以内查出哪瓶是毒药?

    后来LZ的补充:
    sorry,是一个星期后查出毒药,表达问题
  • 阿道
    32个吧。
    把瓶子编号1-1000。

    让犯人1喝所有个位数是1的瓶子,犯人2喝所有个位数是2的瓶子,犯人3喝所有个位数是3的瓶子……犯人10喝所有个位数是0的瓶子。
    个位数用了10个犯人。

    然后让犯人11喝所有十位数是1的瓶子……犯人20喝所有十位数是0的瓶子。 十位数用了10个犯人。
    然后百位再用10个犯人。

    一个犯人喝第1000瓶。

    这样根据一个礼拜后死掉的犯人来判断个位,十位,百位。

    疑,怎么只要31个人阿。
  • 隐的游戏
    简单啊

    把瓶子里的药水以分成10组 每组100瓶 把100瓶药倒在各取一点倒在一个瓶子里

    成为混合的10瓶药 拿给10个犯人喝 死1个

    确认100瓶以内 再分成10组 每组10瓶 混合为 10瓶 给10个犯人喝 死1个

    最后剩10瓶。。。。。。。。。。。。选10个人喝 死1个

    一共挂3个。。。。



























    我承认我是瞎搅和
  • s
    squalltc823
    这和金田一里面那个天平称金币的题有异曲同工之妙,答案是10吧
  • w
    waterking
    999的话,最多只死一个人.

    所以说人道主义就是扯淡.
  • 阿道
    虽然只死一个人,但是1000个人都要受一个礼拜的煎熬啊:谁也不能保证自己能活着。

    人道主义的说法还是有必要的。
  • a
    aweiwei
    是这样:
    10位数字(二进制的),从0000000001到1111111111,一共可以表示1024个数字,可以代表这1000瓶水;而每一位数字代表一个死囚,0代表不喝,1代表喝。
    每个人都会喝很多次(当然第一个人喝的次数最多了,要喝500瓶),看哪一个数字位上的死掉了,就可以知道这个10位数的排列。转化成10进制就可以知道哪一瓶有毒了。
  • a
    aweiwei
    要纯粹死人最少,那就999个,反正只死一个。
  • s
    shinken4503
    我想知道在计算机模型提出前如何表述这段话